2016-11-03 112 views
-3

我無法對這個分配工作,並可以使用一些幫助這裏進行樣品的輸入和輸出的說明操作:Fibonnaci.java和亞軍

enter image description here

https://i.stack.imgur.com/nawNh.png。任何幫助將不勝感激。

import java.util.Arrays; 

public class FibonacciRunner 
{ 

    public static void main(String[] args) { 
     int[] fibArray = {1,2,3,4,5,6,11,16,21,31,41,46,1,1,2,1,2,11}; 
     Fibonacci fibo = new Fibonacci(); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 
     System.out.println(fibo.getFibo()); 

    } 
} 
public class Fibonacci 
{ 
    int[] fibArray; 
    public Fibonacci() 
    { 
     fibArray = new int[50]; 
     this.setFibo(); 
    } 
    public void setFibo() 
    { 
     fibArray[0]=1; 
     fibArray[1]=1; 
     for(int idx = 2; idx<fibArray.length; idx++){ 
      fibArray[idx] = fibArray[idx-1] + fibArray[idx-2]; 
     } 

    } 
    public int getFibo(int index) 
    { 
    if(index < 50) 
    return fibArray[index]; 
    else 
     return -1; 
    } 

    public String toString() 
    { 
     return this.getFibo() + "\n"; 
    } 
} 
+3

getFibo需要一個int值,但不帶參數調用它。這將是一個編譯器錯誤。 for(int I = 0; I <50; I ++)System.out.println(fibo.getFibo(I));可能是一個線索 –

回答

0

阿什利是正確的。你應該在主程序中做這樣的事情:

for (int i = 0; i < fibArray.length; i++) 
    System.out.println(fibo.getFibo(fibArray[i]));