【发布时间】:2017-05-08 15:41:31
【问题描述】:
我是 Java 新手,这就是我必须做的:
顺序如下:1、1、2、3、5、8、13、21、...等
序列中的下一个数字是前2个数字的总和
编写一个程序,让用户输入一个数字 n,然后计算序列的第 n 个数字和序列中数字的总和。
例如,第 5 个数字是 5,该数字的总和是 12
这不是重复的,因为我的问题与其他问题不同,我的代码也不同。这是我到目前为止所做的:
public class fibonnacifinal {
public static void main(String args[]) {
System.out.println("Enter number upto which Fibonacci series to print: ");
int number = new Scanner(System.in).nextInt();
System.out.println("\n Fibonacci number at location " + number + " is ==> " + (fibonacciLoop(number) + ""));
}
public static int fibonacciLoop(int number) {
if (number == 1 || number == 2) {
return 1;
}
int fibo1 = 1, fibo2 = 1, fibonacci = 1;
for (int i = 3; i <= number; i++) {
fibonacci = fibo1 + fibo2; // Fibonacci number is sum of previous two Fibonacci number
fibo1 = fibo2;
fibo2 = fibonacci;
}
return fibonacci; // Fibonacci number
}
}
我遇到的问题是我无法获取要添加和打印的数字。例如,如果用户输入 7,我可以让它说第 7 个数字是 13,但我不能让它打印那个数字的总和是 33。
【问题讨论】:
-
在您的代码中,我看不到任何尝试获取斐波那契数的总和...
-
我将编辑代码,@TimothyTruckle 我不知道该怎么做
-
@JohnSmith “我不知道怎么做”也许你先在纸上写下你会怎么做,一步一步……
标签: java for-loop netbeans add fibonacci