java 猴子吃桃子的问题 其中有断代码看不懂 希望有人能帮我解答一下 最好再把这个整个的思路也说一下 谢谢
就是这段代码(peach(day+1,sday)+1)*2;看不懂什么意思知道是公式不知道为什么这么算java新人谢谢大家了importjava.util.*;publi...
就是这段代码 (peach(day+1,sday)+1)*2; 看不懂 什么意思 知道是公式 不知道为什么这么算 java新人 谢谢大家了
import java.util.*;
public class Wj{
//day 表示想得到哪天的桃子数,sday表示吃了多少天剩下一个桃子
public static int peach(int day,int sday)
{
if(day==sday)
{
return 1;
}
else
{
//问题就在这 (peach(day+1,sday)+1)*2;
//
return (peach(day+1,sday)+1)*2;
}
}
public static void scan()
{
System.out.println("请输入2个数:");
Scanner sr=new Scanner(System.in);
int a=sr.nextInt();
int b=sr.nextInt();
if(a<b)
{
System.out.println(Wj.peach(a, b));
}
else
{
System.out.println("第一个数要小于等于大二个数");
Wj.scan();
}
}
public static void main(String []args)
{
Wj.scan();
}
} 展开
import java.util.*;
public class Wj{
//day 表示想得到哪天的桃子数,sday表示吃了多少天剩下一个桃子
public static int peach(int day,int sday)
{
if(day==sday)
{
return 1;
}
else
{
//问题就在这 (peach(day+1,sday)+1)*2;
//
return (peach(day+1,sday)+1)*2;
}
}
public static void scan()
{
System.out.println("请输入2个数:");
Scanner sr=new Scanner(System.in);
int a=sr.nextInt();
int b=sr.nextInt();
if(a<b)
{
System.out.println(Wj.peach(a, b));
}
else
{
System.out.println("第一个数要小于等于大二个数");
Wj.scan();
}
}
public static void main(String []args)
{
Wj.scan();
}
} 展开
展开全部
这是一个递归,其实就是调用自己。
追问
谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
恩,是递归调用
确实对于递归问题理解起来都挺难的,但不要急躁,静下心来,按照代码的执行顺序去逐步分析,你就会理解其中的奥妙,递归是个非常重要的算法,你若能灵活掌握和运用递归思想,你会发现你的编程境界真的提高了。
加油,祝愿你能成功……
确实对于递归问题理解起来都挺难的,但不要急躁,静下心来,按照代码的执行顺序去逐步分析,你就会理解其中的奥妙,递归是个非常重要的算法,你若能灵活掌握和运用递归思想,你会发现你的编程境界真的提高了。
加油,祝愿你能成功……
追问
谢谢 我在看看书去
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询