[英]Print Fibonacci sequence up to nth place?
我試圖將整個斐波納契序列打印到給定的位置。 因此,用戶將決定他們想要查看多少個斐波那契序列(最多16次重復)並且它將打印整個序列。
我當前的代碼僅打印您選擇的地點的序列號。 例如:4打印2而不是0 1 1 2。
public int Fibonacci(int number){
if(number == 1 || number == 2){
return 1;
}
int fib1=1, fib2=1, fibonacci=1;
for(int count= 3; count<= number; count++){
fibonacci = fib1 + fib2;
fib1 = fib2;
fib2 = fibonacci;
}
return fibonacci;
}
這是我的主要方法:
import java.util.Scanner;
public class FibonacciPrinter
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.print("Enter an integer: ");
int input = in.nextInt();
FibonacciGenerator newNumber = new FibonacciGenerator();
for(int fibCount = 0; fibCount < input; fibCount++)
{
System.out.println(newNumber.Fibonacci(input));
}
}
}
我想在這里,
for(int fibCount = 0; fibCount < input; fibCount++)
{
System.out.println(newNumber.Fibonacci(input));
}
你幾乎肯定想要,
for(int fibCount = 0; fibCount < input; fibCount++)
{
System.out.println(newNumber.Fibonacci(fibCount)); // <-- fibCount not input
}
例如,您需要更新方法以處理零情況
public int Fibonacci(int number) {
if (number == 0) return 0;
// ...
}
在Java中,約定將Fibonacci
命名為fibonacci
因為方法名稱是以小寫字母開頭的駝峰(類按照慣例以大寫字母開頭)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.