-4
package fibonacci;
import java.math.BigInteger;
import java.math.*;
public class fibo {
         public static void main(String[] args) {

             //number of elements to generate in a series
            BigInteger sum;
            BigInteger[] series= new BigInteger[4000000];



           //long[] series = new long[4000000];

             //create first 2 series elements
             series[0] = BigInteger.valueOf(1);
             series[1] = BigInteger.valueOf(2);

             //create the Fibonacci series and store it in an array
             for(int i=2; i < series.length; i++){
                     series[i] = series[i-1].add(series[i-2]);
                     if (series[i].mod(BigInteger.valueOf(2)) == BigInteger.valueOf(0)){
                   sum = sum.add(series[i]);  //error here
                     }

             }
             System.out.println("Fibonacci Series sum " + sum); //error here


             }

    }

フィボナッチの偶数の合計を計算しようとしています。ここで何を変更する必要がありますか? それとも、.subtract を使用してプログラム全体を書き直す必要がありますか?

4

2 に答える 2

7

初期化しますsum(BigInteger への参照)。ローカル変数はデフォルト値を取得しません。自分で初期化する必要があります。

  BigInteger sum= new BigInteger("0");

また

  BigInteger sum= BigInteger.ZERO;
于 2013-03-20T09:56:52.917 に答える
1

sum値を追加する前に、を初期化する必要があります。

BigInteger sum= new BigInteger("0");

お役に立てれば..

于 2013-03-20T09:59:44.500 に答える