猿问

怎么用JAVA if体完成这个?

猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
1534

boy
浏览 1234回答 3
3回答

SCLA

public class Main {       /**      * 思路:      * 倒推, 第10天还没吃时,发现剩一个桃子,所以 初始值number=1,      * 第10天: 剩余的桃子 number = 1      * 第9天: 剩余的桃子 number = ( (第10天剩余的桃子)+ 1 ) * 2      * 第8天: 剩余的桃子 number = ( (第9天剩余的桃子)+ 1 ) * 2      * ...      * ..      * .      * 注意:      *    循环变量i: 1~9      *    实践上这猴子只吃了9天的桃子,第10天看到只剩1个桃子了,可能没舍得吃掉。。。      */     public static void main(String[] args) {               int number = 1;         for (int i = 1; i < 10; i++) {             number = (number + 1) * 2;         }         System.out.println("number: " + number);     } }

半枯

package monkey; public class Peach { public static void main(String[] args) { A a=new A(); int sum=a.a(); System.out.println(sum); } } class A{ int sum=1; int day=10; int a() { if (day-->1) { sum=(sum+1)*2; return a(); }else { return sum; } } }

街边七号

这好像是递归吧。。
随时随地看视频慕课网APP

相关分类

Java
我要回答