导航:首页 > 编程语言 > java递归兔子

java递归兔子

发布时间:2023-01-30 08:45:05

❶ 请教:用java编程计算兔子数量问题

递归

intf1=1;//一个月大的兔子
intf2=1;//二个月大的兔子
intfn=1;//兔子总数
for(inti=3;i<25;i++){
fn=f1+f2;
f2=f1;
f1=fn;
System.out.println(i+","+fn);
}

❷ java程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21....

public class Test {//用递归法计算兔子的规律
static long fib(int x){
if(x>2) return (fib(x-1)+fib(x-2));
else return 1;
}
public static void main(String[] args) {
for(int i=1;i<=24;i++){
long n=fib(i);
//算出的是对数.要算总数的法,*2就行
System.out.println("第"+i+"个月有兔子对数为"+n);
}
}
}

❸ java递归不死兔子

public class Test1 {
public static void main(String[] args) {
System.out.println(diGui(19));
}

public static int diGui(int n) {
if (n == 0 || n == 1) {
return 1;
} else {
return diGui(n - 1) + diGui(n - 2);
}
}
}

❹ java用递归编程(兔子问题)

这个是
斐波那契数列
的问题,根据要求编写的
程序
如下:
public
class
Fibonacci
{
static
int
mb_Fibonacci(int
n){
if(n==1)
return
1;
if(n==2)
return
1;
return
mb_Fibonacci(n-1)+mb_Fibonacci(n-2);
}
public
static
void
main(String[]
args)
{
System.out.println(mb_Fibonacci(13));
}
}
运行结果:
233

❺ Java代码编程 经典的兔子问题

这是斐波那契数列的问题

可以用递归,也可以用循环

递归:
public class Demo3 {
// 使用递归方法
private static int getFibo(int i) {
if (i == 1 || i == 2)
return 1;
else
return getFibo(i - 1) + getFibo(i - 2);
}

public static void main(String[] args) {
System.out.println("斐波那契数列的前20项为:");
for (int j = 1; j <= 20; j++) {
System.out.print(getFibo(j) + "\t");
if (j % 5 == 0)
System.out.println();
}
}

}
循环:
public class Demo2 {
// 定义数组方法
public static void main(String[] args) {
int arr[] = new int[20];
arr[0] = arr[1] = 1;
for (int i = 2; i < arr.length; i++) {
arr[i] = arr[i - 1] + arr[i - 2];
}
System.out.println("斐波那契数列的前20项如下所示:");
for (int i = 0; i < arr.length; i++) {
if (i % 5 == 0)
System.out.println();
System.out.print(arr[i] + "\t");
}
}

}

❻ java中兔子数列怎样用递归法做出来

核心就是:fn=fn-1+fn-2

public class Fibonacci
{
public static void main(String[] args)
{
//初始化变量
int n0 = 1, n1 = 1, n2;

System.out.print(n0 + " " + n1 + " ");

//引入for循环依次执行三个表达式,限定i的取值范围为<10
for (int i = 0; i < 10; i++)
{
//下一个数是早先的两个数的和
n2 = n1 + n0;

System.out.print(n2 + " ");

//早先的第一个数成为早先的第二个数
n0 = n1;
//同时当前的数成为早先的数
n1 = n2; // And current number becomes previous
}
System.out.println(); // Terminate the line
}
}

❼ 有一对雌雄兔子,每两个月就繁殖一对雌雄兔子。问n个月共有多少对兔子递归法 java程序

public class Rabit {

/**
* @param args
* 1对兔子每隔两个月又生1对兔子
*/
public static void main(String[] args) {
int months = 16;//月数自己定
test1(months);
}

private static void test1(int months) {
for(int i=1;i<months;i++){
int num = getNumOfEachMonth(i);
System.out.println(num);
}
}

private static int getNumOfEachMonth(int i) {
if(i==1){
return 1;//第一个月一对
}else if(i==2){
return 1;//第二个月一对
}
//第i个月的=(i-1)个月+(i-2)个月的(既上个月和上上个月,这个你可以从规律看出来)

return getNumOfEachMonth(i-1)+getNumOfEachMonth(i-2);

}

}

阅读全文

与java递归兔子相关的资料

热点内容
如何下载虎牙app 浏览:845
日语年号的算法 浏览:953
dev里面的编译日志咋调出来 浏览:298
php函数引用返回 浏览:814
文件夹和文件夹的创建 浏览:257
香港加密货币牌照 浏览:838
程序员鼓励自己的代码 浏览:393
计算机网络原理pdf 浏览:750
吃鸡国际体验服为什么服务器繁忙 浏览:92
php中sleep 浏览:488
vr怎么看视频算法 浏览:84
手机app如何申报个人所得税零申报 浏览:692
如何截获手机app连接的ip 浏览:331
冰箱压缩机是否需要电容 浏览:345
python列表每一行数据求和 浏览:274
自己有一台服务器可以玩什么 浏览:656
社会学波普诺pdf 浏览:584
解压做食物的小视频 浏览:758
pdf怎么单独设置文件夹 浏览:474
业务逻辑程序员 浏览:659