初歩的な質問ですがご教授願います
フィボナッチ数列の値が400万までの項のうち偶数の合計を求めたく、以下のようなプログラムを作成しました
c
1#include<stdio.h> 2 3int main(){ 4 int Fibonnacci[10000]; 5 int total=0; 6 Fibonnacci[0]=1; 7 Fibonnacci[1]=2; 8 int i=2; 9 10 do{ 11 12 Fibonnacci[i]=Fibonnacci[i-1]+Fibonnacci[i-2]; 13 14 if(Fibonnacci[i]%2==0){ 15 total+=Fibonnacci[i]; 16 } 17 18 i++; 19 20 }while(Fibonnacci[i]<4000000); 21 22 total+=2;//2項目を足す 23 24 printf("フィボナッチ数列の項の値が400万までの項のうち、偶数の合計は%dです\n",total); 25 26 return 0; 27}
ところがこのプログラムでは正しい答えを導けませんでした
ためしに400万までの偶数項を表示させてみたところ、400万を超えても次の項を計算しており
do-while文を正しく抜け出せていないことがわかりました
一体何が間違っているのでしょうか?
環境はOSがwindows10
コンパイラはCygwinを使っています
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/14 03:15