这个叫那个什么什么数列吧. public class Test { int index=2; int i=1; int b=1; int flag; public static void main(String[]args) { Test t = new Test(); t.flag=30; System.out.println(t.flag+"---"+t.get()); }public int get() { int c =i+b; b=i; i=c; index++; if(index==flag) { return c; }else { return get(); }
} }注意,别太大了,会溢出,求某个数还好说,要是求多少位以前的和那就麻烦了,网上的,多用百度
斐波那契数列public class fbnq { public static void main(String[]args) { System.out.println(fb(30)); } public int fb(int a) { if(a==1&&a==2){ return 1; }else{ return fb(a-1)+fb(a-2); } } }
斐波那契数列、兔子数列 短路与写错了,应该是短路或,自己汗一个!public class fbnq { public static void main(String[]args) { System.out.println(fb(30)); } public int fb(int a) { if(a==1||a==2) { return 1; }else{ return fb(a-1)+fb(a-2); } } }
C写的兔子数列,也称斐波那契数列,一个递归就OK了。 (斐波那契数列的M应该设置为2) #include<stdio.h> #include <stdlib.h>int f(int m ,int d) { if(m>=d) return 1; else return f(m,d-1)+f(m,d-m); }void main() { int num; num=f(2,6); printf("The are %d pair of rabbit finnaly.",num); }
public class i { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub int[] i6=new int[30]; i6[0]=1; i6[1]=1; for(int i4=2;i4<30;i4++){ i6[i4]=i6[i4-1]+i6[i4-2]; System.out.println("第"+(i4+1)+"个数值为:"+i6[i4]);
public class Test
{
int index=2;
int i=1;
int b=1;
int flag;
public static void main(String[]args)
{
Test t = new Test();
t.flag=30;
System.out.println(t.flag+"---"+t.get());
}public int get()
{
int c =i+b;
b=i;
i=c;
index++;
if(index==flag)
{
return c;
}else
{
return get();
}
}
}注意,别太大了,会溢出,求某个数还好说,要是求多少位以前的和那就麻烦了,网上的,多用百度
{
public static void main(String[]args)
{
System.out.println(fb(30));
}
public int fb(int a)
{
if(a==1&&a==2){
return 1;
}else{
return fb(a-1)+fb(a-2);
}
}
}
短路与写错了,应该是短路或,自己汗一个!public class fbnq
{
public static void main(String[]args)
{
System.out.println(fb(30));
}
public int fb(int a)
{
if(a==1||a==2)
{
return 1;
}else{
return fb(a-1)+fb(a-2);
}
}
}
(斐波那契数列的M应该设置为2)
#include<stdio.h>
#include <stdlib.h>int f(int m ,int d)
{
if(m>=d)
return 1;
else
return f(m,d-1)+f(m,d-m);
}void main()
{
int num;
num=f(2,6);
printf("The are %d pair of rabbit finnaly.",num);
}
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] i6=new int[30];
i6[0]=1;
i6[1]=1;
for(int i4=2;i4<30;i4++){
i6[i4]=i6[i4-1]+i6[i4-2];
System.out.println("第"+(i4+1)+"个数值为:"+i6[i4]);
}
}答案是 第3个数值为:2
第4个数值为:3
第5个数值为:5
第6个数值为:8
第7个数值为:13
第8个数值为:21
第9个数值为:34
第10个数值为:55
第11个数值为:89
第12个数值为:144
第13个数值为:233
第14个数值为:377
第15个数值为:610
第16个数值为:987
第17个数值为:1597
第18个数值为:2584
第19个数值为:4181
第20个数值为:6765
第21个数值为:10946
第22个数值为:17711
第23个数值为:28657
第24个数值为:46368
第25个数值为:75025
第26个数值为:121393
第27个数值为:196418
第28个数值为:317811
第29个数值为:514229
第30个数值为:832040
public static void main(String[] args) {
int [] j = new int[31];
j[0] = 0;
j[1] = 1;
for(int i = 2 ; i <= 30 ; i++){
j[i] = j[i - 1] + j[i -2];
System.out.println("第" + i + "个数为 : " + j[i]);
}
}
}