コンテンツ
COBOLプログラミング言語は、現在も使用されている最も古い言語の1つで、会計、給与計算、在庫管理などのビジネスアプリケーションに重点を置いています。ただし、新しいバージョンには、乱数を生成する機能など、高度な数学関数があります。乱数は、日常の企業会計ではめったに使用されませんが、統計計算や数値問題を解決するためのある種の技法を容易にするのに役立ちます。
COBOLの乱数ジェネレータは統計計算に役立ちます (Hemera Technologies / Photos.com / Getty Images)
機能
COBOLの数学関数は、手続き型言語、つまり手続き文からなるプログラムのセクションの一部です。関数は、予約語 "function"で始まり、その後に "cos"、 "random"、 "log"などの関数名が続きます。関数は1つ以上の引数を取り、それらを使用して処理を実行して、結果をCOBOLのプログラムに返します。いくつかの関数は数字と数値を扱いますが、他の機能は英数字データを扱います。
ランダム
関数randomは、負でない整数の引数を要求し、10進数を返します。引数はオプションで、関数によって返される最初の数を決定する疑似乱数数学プロセスのシードです。プログラミング言語では、すべてのランダムプロセスは、実際には、ランダムであるように見える、長く繰り返された一連の数字です。適切に選択されたプロセスは、数十億サイクル後にのみ数字を繰り返すため、理論的には純粋にランダムではない場合でも、一意の数字の実用的な発生源です。関数に引数を渡すと、同じ数列が生成されます。引数がないと、関数は現在のシーケンスの次の数を生成します。
間隔と分布
COBOLのランダム関数は、0から1までの10進数を返します。統計的には、乱数は長方形の分布をしています。つまり、それぞれの確率は等しくなります。大規模な一連の乱数のグラフは、ゼロからほぼ1まで伸びる比較的平らな線を持ちます。これは、ベル型の曲線を形成する正規分布またはガウス分布とは対照的です。
使用する
random関数によって生成された10進数はそれ自体ではあまり役に立ちませんが、スケールファクタを掛けた場合、アプリケーションに役立つことができる乱数の範囲を作成することができます。たとえば、1から52までのランダムな整数を取得するには、COBOLで次の文を使用します。COMPUTE RANDOM-VALUE = FUNCTION RANDOM(1)* 52 + 1ここで、この関数は0から1未満の数を生成します。それに52を掛けると、0から51までの数字が得られます。1を加えると、間隔は1から52に変わります。