久々の投稿になってしまいました…
最近、誕生日前なのにバイトを詰め込まれとてもとてもとても疲れている私です。
とゆうことでProject Euler2問目解いていきましょう!!
Euler2問目
フィボナッチ数列の項は前の2つの項の和である.
最初の2項を 1, 2 とすれば, 最初の10項は以下の通りである
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
数列の項の値が400万以下の, 偶数値の項の総和を求めよ.
では、解いていきましょう!
###プログラム
a,b = 1,2
#aは最初の項,bは2項目として定義します
c = 2
#bの最初の値を入れるために2にしています
while b < 4000000:
#bが4000000になるまで実行します
a,b = b,a+b
#a = b,b = a+bにします(同時に)
if b % 2 == 0:
#bが2で割り切れるつまり偶数の時に実行します。
c += b
#cという箱にフィボナッチ数列かつ偶数のbという数を足していきます
print(c)
#足されてきたものを全て表示します
今回はプログラムにも中にコメントしました
作っているときに分かりやすくどこでなにをしているのかわかるようにしたかったからです
難しかったところはa,b = b,a + bを分けてはいけないところですこれはコンピューターの中で計算するタイミングの差で同時にしないと答えが変わってきます
他は割とわかりやすいコードでできました
###おわり
今回も頑張ってとけました
みなさんも楽しくプログラミングしましょう!!
それでは私はバイトに行くとします。おつかれさまでした