大きなフロートを整数に丸める

user1887919

Fortranでは、大きな倍精度浮動小数点数を最も近い整数に丸められるようにしたいと思います。私はこれを次のように試みます、

PROGRAM rounding
IMPLICIT NONE
INTEGER, PARAMETER :: DP = 8
REAL(KIND=DP) :: value

value = 12345678987.123456

print *, CEILING(value)

END PROGRAM ROUNDING 

ただし、これは正解を出力しませんが、代わりにを与え-2147483648ます。これは浮動小数点の性質と精度に関係していると思いますが、このように数値を丸めることは妥当な目標のようです。

誰かが私を正しい方向に向けることができますか?

ウラジミールF

によって返される整数変数ceiling()は、値を含めるには小さすぎます。より大きな種類の整数を生成するようにceilingに指示する必要があります。それ以外の場合は、デフォルトの整数を使用します。

例えばによって

print *, CEILING(value, kind=dp)

(そのような種類が存在すると仮定しますが、DP賢明に選択された場合存在するはずです)

それkind=8は醜くて持ち運びできないことに注意してくださいなどのリテラル定数は使用しないでください8そのような種類が存在するという保証はありません。

だから私は使用します:

INTEGER, PARAMETER :: DP = kind(1.d0)

整数の種類の場合、SELECTED_INT_KIND使用して、次のような十分な桁数の種類を選択できます。

INTEGER, PARAMETER :: IP = SELECTED_INT_KIND(15)

print *, CEILING(value, kind=IP)

または、Fortranの他の方法を使用します:integer * 4 vs integer(4)vs integer(kind = 4)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

フロートを次の奇数の整数に丸めます

分類Dev

非常に大きな整数を入力すると、ノードjsが丸められます。

分類Dev

Pythonを丸めずにフロートするためにdouble

分類Dev

距離カットオフ内でフロートを最も近い整数に丸める

分類Dev

大きな整数をサポートするLLVMフロントエンド

分類Dev

フロートを四分の一に丸める方法

分類Dev

ダブル/フロートをBINARY精度に丸める方法は?

分類Dev

フロートをhaskellのintに丸める

分類Dev

非常に大きな答えを与えるフロート値(C)

分類Dev

PHPを整数に丸める

分類Dev

フロートを上向きに整数に丸めますが、それはどの程度信頼できますか?

分類Dev

整数列に挿入するときに浮動小数点入力をサイレントに丸めない

分類Dev

BigQueryで大きな整数値にsum()を適用するときに整数オーバーフローエラーを回避する方法

分類Dev

printfがフロートするときの丸めの問題

分類Dev

フロート値を間隔制限/グリッドに丸める

分類Dev

フロートを小数点第1位に丸める方法は?

分類Dev

丸めだけでは大きすぎると思われる「大きな」エラーを取得する

分類Dev

printfを使用した奇妙なフロート丸め動作

分類Dev

printfを使用した奇妙なフロート丸め動作

分類Dev

大きなリソースフォルダをJavaプロジェクトに含めるためのベストプラクティス

分類Dev

大きなテキストファイルを文字列にロードする

分類Dev

SQLServerに大きなテキストファイルをロードする

分類Dev

ダブルを32ビット整数に丸める高速な方法の説明

分類Dev

モジュラスステートメントの結果は、JuliaとMatlabで異なります。Juliaでフロートを操作するときに丸め誤差を回避するためのベストプラクティスはありますか?

分類Dev

Webフロントエンドに大きなデータセットを表示するためのバックエンドを作成する方法

分類Dev

フロート結果を丸めるT-SQLAVG

分類Dev

大きなデータセットをRにロードするための最速の方法と最速のフォーマットは何ですか

分類Dev

CSSパーセント値を整数ピクセルに丸める方法

分類Dev

一連の大きな整数のLCMを見つけるときにオーバーフローエラーを回避する方法

Related 関連記事

  1. 1

    フロートを次の奇数の整数に丸めます

  2. 2

    非常に大きな整数を入力すると、ノードjsが丸められます。

  3. 3

    Pythonを丸めずにフロートするためにdouble

  4. 4

    距離カットオフ内でフロートを最も近い整数に丸める

  5. 5

    大きな整数をサポートするLLVMフロントエンド

  6. 6

    フロートを四分の一に丸める方法

  7. 7

    ダブル/フロートをBINARY精度に丸める方法は?

  8. 8

    フロートをhaskellのintに丸める

  9. 9

    非常に大きな答えを与えるフロート値(C)

  10. 10

    PHPを整数に丸める

  11. 11

    フロートを上向きに整数に丸めますが、それはどの程度信頼できますか?

  12. 12

    整数列に挿入するときに浮動小数点入力をサイレントに丸めない

  13. 13

    BigQueryで大きな整数値にsum()を適用するときに整数オーバーフローエラーを回避する方法

  14. 14

    printfがフロートするときの丸めの問題

  15. 15

    フロート値を間隔制限/グリッドに丸める

  16. 16

    フロートを小数点第1位に丸める方法は?

  17. 17

    丸めだけでは大きすぎると思われる「大きな」エラーを取得する

  18. 18

    printfを使用した奇妙なフロート丸め動作

  19. 19

    printfを使用した奇妙なフロート丸め動作

  20. 20

    大きなリソースフォルダをJavaプロジェクトに含めるためのベストプラクティス

  21. 21

    大きなテキストファイルを文字列にロードする

  22. 22

    SQLServerに大きなテキストファイルをロードする

  23. 23

    ダブルを32ビット整数に丸める高速な方法の説明

  24. 24

    モジュラスステートメントの結果は、JuliaとMatlabで異なります。Juliaでフロートを操作するときに丸め誤差を回避するためのベストプラクティスはありますか?

  25. 25

    Webフロントエンドに大きなデータセットを表示するためのバックエンドを作成する方法

  26. 26

    フロート結果を丸めるT-SQLAVG

  27. 27

    大きなデータセットをRにロードするための最速の方法と最速のフォーマットは何ですか

  28. 28

    CSSパーセント値を整数ピクセルに丸める方法

  29. 29

    一連の大きな整数のLCMを見つけるときにオーバーフローエラーを回避する方法

ホットタグ

アーカイブ