• 締切済み

円周率取得後の扱い

pythonで円周率の処理をしています 言語はなんでもいいのですが、今やっているのはpythonです # コード import math num = float(math.pi) print(num) で円周率を取得していますが、format関数を用い、指定小数点桁数(例:小数点10まで表示、11桁以下)切り捨てをやりたいのですが、最後の数字(小数点以下10桁目)が常に四捨五入されてしまいます。 円周率を操作する上で、四捨五入が起こらないようにする作法(コード記述のルール)はあるのでしょうか?

みんなの回答

  • dell_OK
  • ベストアンサー率13% (766/5720)
回答No.1

10の10乗をかけて切り捨てたい桁までが整数部になるようにし、 その小数点以下を切り捨て、 10の10乗で割り元の小数桁に戻す、方法はどうでしょうか。 num = math.floor(math.pi * 10 ** 10) / 10 ** 10

ketae
質問者

お礼

ありがとうございます num = 3.141592653589793 print("{:.10f}".format(num)) print("{:.4f}".format(num)) とダイレクトに入力しても丸め上がるのは、formatの仕様と考えることにします

関連するQ&A