回答編集履歴

1

d

2021/01/19 09:02

投稿

tiitoi
tiitoi

スコア21956

test CHANGED
@@ -41,3 +41,57 @@
41
41
  -0.2
42
42
 
43
43
  ```
44
+
45
+
46
+
47
+ ----
48
+
49
+
50
+
51
+ ## 追記
52
+
53
+
54
+
55
+ > 計算に応じた,小数点以下の桁数の表示をしたいです。
56
+
57
+
58
+
59
+ 10進数だと割り切れるはずの計算を必要な桁数で表示したい場合は、2進の浮動小数演算だと困難です。
60
+
61
+ 10進数のまま計算できる Decimal モジュールを使いましょう。
62
+
63
+
64
+
65
+ [decimal --- 十進固定及び浮動小数点数の算術演算 — Python 3.9.1 ドキュメント](https://docs.python.org/ja/3/library/decimal.html)
66
+
67
+
68
+
69
+ ```python
70
+
71
+ from decimal import *
72
+
73
+
74
+
75
+ input_arr = input().split(" ")
76
+
77
+
78
+
79
+ print(input_arr)
80
+
81
+ rest_1 = Decimal(input_arr[0]) - Decimal(input_arr[1]) / 100
82
+
83
+
84
+
85
+ rest_2 = rest_1 - rest_1 * Decimal(input_arr[2]) / 100
86
+
87
+ print(rest_1)
88
+
89
+ print(rest_2)
90
+
91
+ # ['1', '80', '40']
92
+
93
+ # 0.2
94
+
95
+ # 0.12
96
+
97
+ ```