「プロジェクトオイラー問16」の編集履歴(バックアップ)一覧に戻る

プロジェクトオイラー問16 - (2014/02/13 (木) 14:54:10) の1つ前との変更点

追加された行は青色になります

削除された行は赤色になります。

+Problem 16 「累乗の各桁の和」 †
+2^15 = 32768 であり, これの各桁の和は 3 + 2 + 7 + 6 + 8 = 26 となる.
 
+同様にして, 2^1000 の各桁の和を求めよ.
+
+解法
+2^1000を計算して各桁の和をとるだけです。
+何か賢い方法はあるのでしょうか?
+
+ calc(0,0):-!.
+ calc(X,Result):-
+ 	Add is X mod 10,
+  	X1 is X//10,
+ 	calc(X1,Re),
+ 	Result is Re+Add.
+ main16:-
+  	X is 2^1000,
+ 	calc(X,Ans),
+ 	write(Ans).