题目:编写循环算法程序。 一列数的规则如下:1,1,2,3,5,8,13,21,34,……求数列的第40位数是多少。
package chap3_方法;
import java.util.Scanner;
/**
* 编写循环算法程序。
* 斐波那契数列(黄金分割数列,兔子数列)
* 一列数的规则如下:1,1,2,3,5,8,13,21,34,……求数列的第40位数是多少。
*/
public class Test12 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int x1 = 1;
int x2 = 1;
int sum = 0;
System.out.print("请输入斐波那契数列的第x位:");
int x = scanner.nextInt();
if (x==1 || x==2){
System.out.println(1);
}else {
for (int i=3;i<=x;i++){
sum = x1 + x2;
x1 = x2;
x2 = sum;
}
System.out.println("该数列第"+x+"位元素为:"+sum);//102334155
}
scanner.close();
}
}
// int[] num = new int[40];
// num[0]=1;
// num[1]=1;
// int first = num[0];
// int second = num[1];
// for (int i=2;i<num.length;i++){
// num[i]=first+second;
// first = second;
// second = num[i];
// }
// System.out.println(num[39]);