2013年11月24日日曜日

開発環境

初めてのコンピュータサイエンス(Jennifer CampbellPaul GriesJason MontojoGreg Wilson(著)長尾 高弘(翻訳))の9章(集合と辞書)、9.5(練習問題)、6をDartで解いてみる。

その他参考書籍

9.5(練習問題)、6.

コード

sample.dart

import 'dart:html';

void main() {
  InputElement run = querySelector('#run_dart');
  InputElement clear = querySelector('#clear');
  Element pre = querySelector('#pre0');
  run.onClick.listen((MouseEvent event){
    String result = '${window.navigator.userAgent}\n';
    result += '特定の素粒子を検出する確率を示すMap: ${m}\n';
    result += '最も観察できる確率の低い素粒子: ${f(m)}\n';
    pre.text = result;
  });
  clear.onClick.listen((MouseEvent event) => pre.text = '');
}

Map<String, double> m = {'ニュートロン':0.55, '陽子':0.21, '中間子':0.03,
                         'ミューオン':0.07, 'ニュートリノ':0.14};

String f(Map<String, num> m){
  List<String> ks = m.keys.toList();
  String result = ks.first;
  num min = m[result];
  for (String k in ks.sublist(1)){
    if (m[k] < min){
      result = k;
      min = m[k];
    }
  }
  return result;
}














						

0 コメント:

コメントを投稿