Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
次のプログラムは、に対して1を出力し、100E-2に対して0を与えます。100*10**(-2)これは、演算子の指数が負の数に対して機能しないことを意味し**ます。これは正しいことです。前もって感謝します
100E-2
100*10**(-2)
**
program testme implicit none print*,100E-2 print*,100*10**(-2) end program
2番目のprintステートメントが出力することに気付くでしょう0-小数点以下のptなどはありません。たとえば、整数ゼロ。これ10は、それ自体が整数リテラルであり、それを負の2乗すると正しくゼロになるためです。これに整数100を掛けても、整数はゼロになります。
0
10
代わりに使用する場合
print*,100*10.**(-2)
あなたはあなたが期待する答えを得るでしょう。
100e-2科学的記数法で表現された数値は浮動小数点(real)リテラルであるため、この問題は発生しません。
100e-2
real