回答編集履歴

1

補足を追加

2020/07/30 11:41

投稿

Daregada
Daregada

スコア11990

test CHANGED
@@ -3,3 +3,45 @@
3
3
 
4
4
 
5
5
  `long long int`が64ビット符号付き整数なら20の階乗までは保持できますが、いずれにしろ100の階乗は無理ですね。
6
+
7
+
8
+
9
+ 追加分:
10
+
11
+ いや、doubleにしても有効桁数の制限があるので、正確な値は出ませんよ。
12
+
13
+
14
+
15
+ (多倍長整数を扱える)Pythonでやってみると、どのくらいの桁数かわかります。
16
+
17
+ ```Python
18
+
19
+ n = 1
20
+
21
+ for i in range(1, 101):
22
+
23
+ n *= i
24
+
25
+ print(n)
26
+
27
+ ```
28
+
29
+ ```result
30
+
31
+ 1
32
+
33
+ 2
34
+
35
+ 6
36
+
37
+ 24
38
+
39
+ 120
40
+
41
+ (中略)
42
+
43
+ 933262154439441526816992388562667004907159682643816214685929638952175999932299156089414639761565182862536979208272237582511852109168640000000000000000000000
44
+
45
+ 93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000
46
+
47
+ ```