- 締切済み
円周率取得後の扱い
pythonで円周率の処理をしています 言語はなんでもいいのですが、今やっているのはpythonです # コード import math num = float(math.pi) print(num) で円周率を取得していますが、format関数を用い、指定小数点桁数(例:小数点10まで表示、11桁以下)切り捨てをやりたいのですが、最後の数字(小数点以下10桁目)が常に四捨五入されてしまいます。 円周率を操作する上で、四捨五入が起こらないようにする作法(コード記述のルール)はあるのでしょうか?
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- dell_OK
- ベストアンサー率13% (766/5720)
回答No.1
10の10乗をかけて切り捨てたい桁までが整数部になるようにし、 その小数点以下を切り捨て、 10の10乗で割り元の小数桁に戻す、方法はどうでしょうか。 num = math.floor(math.pi * 10 ** 10) / 10 ** 10
お礼
ありがとうございます num = 3.141592653589793 print("{:.10f}".format(num)) print("{:.4f}".format(num)) とダイレクトに入力しても丸め上がるのは、formatの仕様と考えることにします