long double ランダム ジェネレーターを作成する必要があります。高精度のランダムシーケンスは必要ないため、線形合同ジェネレーターについて考えています。しかし、整数を long double に変換するにはどうすればよいでしょうか?
質問する
1832 次
1 に答える
1
変換は、割り当て時に暗示されます。(gcc でテスト済み):
program test
integer i
real*10 d
i = 10000
i = i * 101
d = i
write (*,*) 'result is', d
end
...修正...
拡張型がうまく機能しないのではないかと心配していたので、より完全なテストを作成しました。
program test
integer i
real f
double precision d
real*10 ld
i = 100000
i = i * 101 + 101
f = i * 1.1
d = f * 1.1
ld = d * 1.1
write (*,*) 'result is', i, f, d, ld
end
[wally@zenetfedora ~]$ ./a.out
result is 10100101 11110111. 12221122.364885688 13443234.892748519537
于 2011-04-28T14:46:13.073 に答える