我想出了计算公式的公式,即使用序列中的每个数字使用先前的先前的先前数字+先前的先前的数字,例如,使用先前的x3来获得数字4,即序列中的前2个加上前一个x2号,后者是序列中的第二个2。我知道我必须使用4个变量,然后在循环中相应地交换数字,但是我不知道该怎么做。 这是我到目前为止所拥有的。
System.out.print("Loop for the first 12 terms of sequence 1, 1, 1, 2, 2, 3, 4, 5, 7, 9\n");
int p0, p1, p2, p3, c;// c in control p is num is sequence.
c=0;
p0=1;
p1=1;
p2=1;
p3=p0+p1;
while(c<=12){
System.out.print(p0+","+p1+","+p2+","+p3+",");
c++;
}
这只是给我序列的前4个数字12次。我是否必须对下一个数字使用完全不同的while循环,还是可以在同一循环中使用它? 任何帮助表示赞赏。谢谢。
答案 0 :(得分:1)
您可以尝试此代码。这将为您提供结果:
public static void main(String[] args) {
int limit = 12;
int value1 = 1;
int value2 = 1;
int value3 = 1;
for(int i = 0; i < limit; ++i) {
if(i == 0) {
System.out.println(value1);
System.out.println(value2);
}
System.out.println(value3);
int temp = value3;
value3 = value1 + value2;
value1 = value2;
value2 = temp;
}
}
答案 1 :(得分:-1)
您可以这样做:
初始化一个由12个数字组成的数组
在数组中输入起始序列(序列中有10个数字)
给出序列中最后一个数字的迭代变量索引
应用您的公式并找到值
增加迭代器的值
所有操作都可以在一个while循环内完成,而无需另一个。另外,请确保不要获取ArrayIndexOutOfBoundsException