我寫了一個程序來顯示在java中的斐波那契數列,但現在我想序列中的數字以十進行顯示,這是前一行中的前十個斐波納契數字,在下一行等..... 我一直有真正的問題,使這一可能性。打印斐波那契數字在十行中逐行
這是程序:
import java.util.Scanner;
import java.math.BigInteger;
class Fibonacci {
public static void main(String args[]) {
System.out.print("Enter number upto which Fibonacci series to print: ");
int number = new Scanner(System.in).nextInt();
System.out.println("\n\nFibonacci series upto " + number + " numbers : ");
for (int i = 1; i <= number; i++) {
System.out.println(fibonacciLoop(i) + " ");
}
}
public static BigInteger fibonacciLoop(int number) {
if (number == 1 || number == 2) {
return BigInteger.valueOf(1);
}
for (int x = 1; x <= number; x++){
return BigInteger.valueOf(x);
}
BigInteger fibonacci = BigInteger.valueOf(1);
BigInteger fibo1 = BigInteger.valueOf(1);
BigInteger fibo2 = BigInteger.valueOf(1);
for (int i = 3; i <= number; i++) {
fibonacci = fibo1.add(fibo2);
fibo1 = fibo2;
fibo2 = fibonacci;
}
return fibonacci;
}
}
這是功課? –
BigInteger.valueOf(1)= BigInteger.ONE; –
您的斐波那契循環中的第一個循環已損壞。它會在第一個2之後爲每個值返回3. –