- ベストアンサー
Fortran のコードについて
古いフォートランのコードで、Cに直したいのですがコードが読めません。色々ウェブで調べてみましたが、コード自体に疑問を持っているので質問したいと思いました。 以下コードです。 FUNCTION RAND(K) INTEGER K, M, CONST1 REAL RAND, CONST2 PARAMETER (CONST1 = 2147483647, CONST2 = .4656613E-9) SAVE DATA M /0/ IF(M .EQ.0) M = K M = M * 65539 IF(M .LT. 0) M = (M + 1) + CONST1 RAND = M*CONST2 END 以下私の理解している事: 参考にしたページ: http://www.g.dendai.ac.jp/lecture/fortran/fort12.html 任意のKが関数に渡される。 関数は K*65539*CONST2をいつも返す。 私の疑問点は、どうして型宣言が行われていないのか? どうして関数は特定の値をいつも返すのに、IFの分岐が必要なのか?という事です。 私の理解していることが間違っているのでしょうか。 困ってます。アドバイスをよろしくお願いしますm(__;)m
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- koma1000nin
- ベストアンサー率30% (342/1133)
回答No.2
- rinkun
- ベストアンサー率44% (706/1571)
回答No.1
お礼
本当にありがとうございます!! Cで書いてもらって、やっと何がしたいのか分かりました汗。 何か難しいプログラム書き終わって、閉め切ろうとしていた所でした。 本当に本当に助かりました!!重ね重ねお礼申し上げますm(_ _)m