Fortran-numbers
Fortran-数値
Fortranの数は3つの組み込みデータ型で表されます-
- 整数型
- リアルタイプ *複合型
整数型
整数型は整数値のみを保持できます。 次の例では、通常の4バイト整数で保持できる最大値を抽出します-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
- huge()関数は、特定の整数データ型が保持できる最大数を与えることに注意してください。 *kind 指定子を使用してバイト数を指定することもできます。 次の例はこれを示しています-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
リアルタイプ
2.0、3.1415、-100.876などの浮動小数点数を格納します。
従来、2つの異なる real 型がありました。デフォルトのreal型と double precision 型です。
ただし、Fortran 90/95では、 kind 指定子を使用して、実データ型と整数データ型の精度をより詳細に制御できます。これについては、後ほど説明します。
次の例は、実際のデータ型の使用を示しています-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
複合型
これは、複素数を格納するために使用されます。 複素数には、実部と虚部の2つの部分があります。 2つの連続した数値ストレージユニットは、これら2つの部分を格納します。
たとえば、複素数(3.0、-5.0)は3.0 – 5.0iに等しい
汎用関数* cmplx()*は複素数を作成します。 入力引数のタイプに関係なく、実部と虚部が単精度である結果を生成します。
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
次のプログラムは、複素数演算を示しています-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
数値の範囲、精度、サイズ
整数の範囲、浮動小数点数の精度とサイズは、特定のデータ型に割り当てられたビット数に依存します。
次の表は、整数のビット数と範囲を示しています-
Number of bits | Maximum value | Reason |
---|---|---|
64 | 9,223,372,036,854,774,807 | (2**63)–1 |
32 | 2,147,483,647 | (2**31)–1 |
次の表は、ビット数、最小値と最大値、および実数の精度を示しています。
Number of bits | Largest value | Smallest value | Precision |
---|---|---|---|
64 | 0.8E+308 | 0.5E–308 | 15–18 |
32 | 1.7E+38 | 0.3E–38 | 6-9 |
次の例はこれを示しています-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
今、私たちはより小さい数を使用しましょう-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
アンダーフローを見てみましょう-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
種類指定子
科学プログラミングでは、作業が行われているハードウェアプラットフォームのデータの範囲と精度を知る必要があります。
組み込み関数* kind()*を使用すると、プログラムを実行する前にハードウェアのデータ表現の詳細を照会できます。
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-
また、すべてのデータ型の種類を確認することができます-
上記のプログラムをコンパイルして実行すると、次の結果が生成されます-