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).

タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2014年02月13日 14:57