【程序17】題目:猴子吃桃問(wèn)題:猴子第一天摘下若干個(gè)桃子,當(dāng)即吃了一半,還不癮,又多吃了一個(gè) 第二天早上又將剩下的桃子吃掉一半,又多吃了一個(gè)。以后每天早上都吃了前一天剩下的一半零一個(gè)。到第10天早上想再吃時(shí),見(jiàn)只剩下一個(gè)桃子了。求第一天共摘了多少。程序分析:采取逆向思維的方法,從后往前推斷。
3 回答
已采納
漢江怪人
TA貢獻(xiàn)50條經(jīng)驗(yàn) 獲得超11個(gè)贊
public?class?Monkey?{
static?int?jisuan(int?day){
if(day==1)?return?1;
else?return?(jisuan(day-1)+1)*2;
}
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
System.out.println(jisuan(10));
}
}輸出結(jié)果為1534 第一天共摘了1534個(gè)桃子
風(fēng)中打傘的小孩
TA貢獻(xiàn)73條經(jīng)驗(yàn) 獲得超20個(gè)贊
????????int?n=1;
for(int?i=0;i<9;i++)
{
n=2*(n+1);
}1534
王大厲
TA貢獻(xiàn)58條經(jīng)驗(yàn) 獲得超11個(gè)贊
public?static?void?main(String[]?args)?{
/* 正推*/
int?x;//第一天摘下的桃子
final?double?a=1.5; //穩(wěn)定下來(lái)每天的量
for(double?i=1;;i++){
if((i*1.0/2+1)+((i-(i*1.0/2+1))/2+1)+7*1.5+1==i){//判斷這10天吃的桃子量是否等于第一天摘下來(lái)的桃子總和
x=(int)i;
System.out.println(i);
break;
}
}
System.out.println("總共摘了:"+x+"個(gè)桃子");
//反推
double?m=1+1.5+1.5+1.5+1.5+1.5+1.5+1.5;//10-3天的桃子
System.out.println("第二天余量:"+m);
double?n=(m+1)*2;
System.out.println("第一天余量:"+n);
double?k=(n+1)*2;
System.out.println("第一天摘下的桃子總和:"+k);
}添加回答
舉報(bào)
0/150
提交
取消
