2013年10月29日火曜日

開発環境

C実践プログラミング 第3版 (Steve Oualline (著)、 望月 康司 (監訳) (翻訳)、谷口 功 (翻訳)、オライリー・ジャパン)のⅡ部(単純なプログラミング)の9章(変数スコープおよび関数)、9.4(構造かプログラミング)、9.5(再帰)、9.7(プログラミング実習)、実習 9-5をDartで解いてみる。

その他参考書籍

実習 9-5.

コード

sample.dart

import 'dart:io' as io;
import 'dart:math' as math;

num numListMax(List<num> list){
  num result = list.first;
  for(var n in list.sublist(1)){
    if (n > result){
      result = n;
    }
  }
  return result;
}
void main(){
  var n,
      pattern = new RegExp(r'^\s*$');
  List<int> list;
  while (true){
    list = [];
    print('数値を入力');
    while(true){
      n = io.stdin.readLineSync();
      if (pattern.hasMatch(n)){
        break;
      }
      list.add(int.parse(n));
    }
    if (list.length == 0){
      break;
    }
    print('${list} 最大値 ${numListMax(list)}');
  }
  print('終了');
}

入出力結果

数値を入力
1
0
2
9
3
8
4
7
5
6

[1, 0, 2, 9, 3, 8, 4, 7, 5, 6] 最大値 9
数値を入力
1
2
3
4
5
100
6
7
8
9
10

[1, 2, 3, 4, 5, 100, 6, 7, 8, 9, 10] 最大値 100
数値を入力
100
100
100
100
100

[100, 100, 100, 100, 100] 最大値 100
数値を入力

終了

0 コメント:

コメントを投稿