「猴子吃桃java递归」java猴子吃桃问题答案
本篇文章给大家谈谈猴子吃桃java递归,以及java猴子吃桃问题答案对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
猴子吃桃递归《java or c#》
我用C语言写了一个 你看能不能懂!! c语言转java很好转的 你关键是看懂每个语句的意思就成 理解思路就好使(PS:之所以不直接给你java程序希望你能体谅 因为那样你没有思考)你学java C语言一定学过点 如果那句不懂就继续问我 这个用for循环也可以做的 while简单点
1.程序分析:采取逆向思维的方法,从后往前推断。
2.程序源代码:
#include "stdio.h"
#include "conio.h"
main()
{
int day,x1,x2;
day=9;
x2=1;
while(day0)
{
x1=(x2+1)*2;/*第一天的桃子数是第2天桃子数加1后的2倍*/
x2=x1;
day--;
}
printf("the total is %d\n",x1);
getch();
}
利用递归调用实现:猴子吃桃问题 JAVA语言编辑 主要请打上注释解释一二 谢谢
public class test1
{
public int getCount( int n )
{
if( n == 1 )
return 1 ;
else
return getCount(n - 1) * 2 + 1 ;
}
public static void main(String args[])
{
test1 t = new test1() ;
System.out.println(t.getCount(10)) ;
}
}
自己调试一下
java经典算法题——猴子吃桃
public class Monkey
{
public static void main(String[] args)
{
int sum=0,remain=1;
//每天吃剩的桃子加一个正好是前一天桃子的一半,每天桃子的总数就是前一天剩下桃子的数量
for(int day=9;day=1;day--)
{
sum=(remain+1)*2;
remain=sum;
System.out.println("第"+day+"天还剩"+remain+"个桃子");
}
System.out.println(sum);
}
}
用JAVA,递归,写猴子分桃问题
//楼上几位的有逻辑问题
public
class
Dg
{
static
int
ts=0;//桃子总数
int
fs=1;//记录分的次数
static
int
hs=5;//猴子数...
int
tsscope=5000;//桃子数的取值范围,范转太大容易溢出.
public
int
fT(int
t){
if(t==tsscope){
//当桃子数到了最大的取值范围时取消递补归
System.out.println("结束");
return
0;
}
else{
if((t-1)%hs==0
fs=hs){
if(fs==hs)
{
System.out.println("桃子数
=
"+ts
+"
时满足分桃条件");
}
fs+=1;
return
fT((t-1)/5*4);//
返回猴子拿走一份后的剩下的总数
}
else
{
//没满足条件
fs=1;//分的次数重置为1
return
fT(ts+=1);//桃子数加+1
}
}
}
public
static
void
main(String[]
args)
{
new
Dg().fT(0);
}
}
猴子吃桃java递归的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java猴子吃桃问题答案、猴子吃桃java递归的信息别忘了在本站进行查找喔。
发布于:2022-12-10,除非注明,否则均为
原创文章,转载请注明出处。