プログラミング in OCaml #3
プログラミング in OCaml (目次) - kengpong
(* 練習問題3.6 次の関数を定義せよ*) (* 1. 2実数の相乗平均をとる関数 geo_mean *) let geo_mean (x, y) = sqrt(x *. y);; (* * 2. 名前(文字列)、身長(実数)、体重(実数)の組を受け取って * 「○○さんは痩せています」などの文字列を返す関 bmi *) let bmi (name, height, weight) = let num = weight /. (height ** height) in let status = if num > 30. then "overweight" else if num > 25. then "normal" else "underweight" in name ^ ":" ^ status ;; (* 3. 任意の整数 x, y に対し、 f (sum_and_diff (x,y)) が (x,y) を返す関数f *) let sum_and_diff (x, y) = (x + y, x - y);; let f (x, y) = ((x + y) / 2, (x - y) / 2);;
2. の問題は、最初日本語で出力しようと思ったのだけど、なんか上手くいかなかった。
その辺の日本語環境回りの事とかは、後々出てきたりするのかな?