読者です 読者をやめる 読者になる 読者になる

落書きノート

ふと自分が気になった事を書いてます

OCamlで問題を解く

追記 間違っていたので修正。文章も追加しました。

自由自在に組めるようになってきました。それにしても面白い言語ですね。

if文が連続して記述出来ないなぁと思ったのですが、セミコロン1つ書けば、連続して書けますね。あまりそういう必要もないような気もしましたが。こうとも書けるよと思っておけば良さそうですね。

open Printf;;
print_string "整数を加算します。\n";;
print_string "何個加算しますか : ";;
let n = read_int();;
let total = ref 0;;

let rec main i = if i = n then
                   i
                 else
                   (
                     print_string "整数 (0で終了) : ";
                     let t = read_int() in
                     if t = 0 then
                       i
                     else
                       (
                         total := !total + t;
                         main (i + 1)
                       )
                   );;
let t = main 0;;
printf "合計は%dです。\n" !total;;
printf "平均は%dです。\n" (!total / t);;