回答編集履歴

1

追記

2020/08/10 04:38

投稿

can110
can110

スコア38266

test CHANGED
@@ -21,3 +21,43 @@
21
21
  print(A) # [(1.0, 0.23)]
22
22
 
23
23
  ```
24
+
25
+
26
+
27
+ 追記
28
+
29
+ ------
30
+
31
+
32
+
33
+ `Decimal`を使って値も`Decimal`で保持しておいたほうがよいでしょう。
34
+
35
+ 入力に`.`がなくてもよく、誤差も発生しません。
36
+
37
+ ```Python
38
+
39
+ n=int(input())
40
+
41
+ A=[]
42
+
43
+ for _ in range(n):
44
+
45
+ a=input()
46
+
47
+ dec = Decimal(a)
48
+
49
+
50
+
51
+ # 必要なときに分離してもよいが
52
+
53
+ d = dec // 1
54
+
55
+ i = dec % 1
56
+
57
+ A.append((d,i))
58
+
59
+
60
+
61
+ print(A) # [(Decimal('1'), Decimal('0.23'))]
62
+
63
+ ```