プロジェクトオイラー問2


Problem 2 「偶数のフィボナッチ数」 †
400万以下のフィナボッチ数で偶数であるものの総和を求めよ。

Haskell解
fib = 1 : 2 :  zipWith (+) fib (tail fib)
sum . takeWhile (<4000000) $ filter even fib

Prolog解
f(_,N2,Sum):-
	4000000<N2,
	!,
	write(Sum).
f(N1,N2,Sum):-
	Sum1 is Sum+N2,
	N22 is N2*3+N1*2,
 	N11 is N2*2+N1,
	f(N11,N22,Sum1).
main:-
	f(1,2,0).

タグ:

+ タグ編集
  • タグ:

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

最終更新:2018年04月18日 04:34