#author("2019-07-13T12:42:05+00:00","default:sagasite","sagasite")
[[プログラミングの基礎]] > 第2章 基本的なデータ

*2.2 実数 [#j847b70b]
-OCamlの数値型は、整数と実数が明確に区別されている。
-実数専用の演算子が用意されている。

**小数点 [#l277a861]
-OCamlで実数を示すには、小数点をつける。
-小数点以下が0の場合、小数点以下は省略してもいいが、小数点は書かないといけない。

 # 2.0 ;;
 - : float = 2.
 # 2. ;;
 - : float = 2.

** 実数専用の演算子 [#z99124fa]
整数の四則演算は、「+」「-」「*」「/」だが、
実数の四則演算は、「+.」「-.」「*.」「/.」となっている。
=記号の後ろに「.」(ドット、ピリオド)を付ける形になっている。

ちょっと面倒っちいけど、厳密に区別するための仕組みなので仕方ないですね。

** べき乗の関数「**」 [#o43acd39]
OCamlの実数には、べき乗を求める関数「**」が用意されています。

 # 1.414 ** 2. ;;
 - : float = 1.9993959999999997

OCamlでは、べき乗は実数のみに用意されており、整数には用意されていない、とのこと。

*** 問題 2.2 [#h546f2e7]
(p.9)

 # 2. *. 3.14 *. 10. ;;
 - : float = 62.800000000000004
 # 1.73 ** 2. ;;
 - : float = 2.9929
 # 7. /. 2. ;;
 - : float = 3.5

** 無限大 [#f3a9c4a8]
OCamlの実数の中で、特殊な値として「無限大」が用意されています。
「infinity」で無限大を表します。

 # infinity ;;
 - : float = infinity

** マイナス無限大 [#n357822d]
マイナス無限大は「neg_infinity」で表します。

 # neg_infinity ;;
 - : float = neg_infinity

 # 2.0 /. infinity ;;
 - : float = 0.
 # 1.0 -. infinity ;;
 - : float = neg_infinity

OCamlの実数の取り扱いは、他のプログラミング言語とはちょっと違っているので、覚えておきましょう。

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS