2017-03-01 127 views
0
public class Fibonaccisequence { 
    public static void main(String args[]){ 
     int term[] = new int[]{1,2}; 
     int termValue = term[0]+term[1]; 
     int sum = 0; 
     while(termValue <= 4000000) 
     { 
      termValue = term[0]+term[1]; 
      if (term[1]%2==0) 
      {sum=sum+term[0];} 


      int a= term[1]; 
      term[1]=termValue; 
      term[0]=a; 
     } 

     System.out.println(sum); 
    } 
} 

问题详细信息: Fibonacci序列中的每个新项都是通过添加前两项生成的。通过用1和2开始,第一10项将是:欧拉项目#2

1,2,3,5,8,13,21,34,55,89,...

通过考虑中的条款斐波那契数列的值不超过四百万,找到偶数值的总和

我得到了2851443个答案,并且我多次查看了我的代码。在这段代码中存在

+0

什么你面临的问题是......? –

+0

@MehrajMalik我得到的答案是错误的 – user7639356

回答

1

一个问题:

if (term[1]%2==0) 
{sum=sum+term[0];} 

如果您发现该术语[1],甚至,你应该将它添加到的总和,而不是以前的值:

if (term[1] % 2 == 0) { 
    sum = sum + term[1]; // add term[1], not term[0] 
}