tiantian0623 发表于 2008-4-23 22:46

猴子吃桃问题

猴子第一天摘若干个桃,当即吃了一半,还不过瘾,又多吃了一个,以后每天早上都吃剩下的一半并多吃一个,直到第十天早上只剩一个,编程求第一天共摘了多少桃子

xiaojingqqww 发表于 2008-4-23 23:29

这好像很简单

#include<iostream.h>
void main(){
int day ,x1,x2;
day=9;x2=1;
while(day>0){
x1=2*(x2+1);
x2=x1;
day--;}
cout<<x2<<endl;}
已在vc6.0上运行了,答案是1534
不信试试

lizhongjun 发表于 2008-4-24 10:45

谢谢!能不能加点注释

能不能加点注释,代表每一句语句的用意

落叶星空 发表于 2008-4-25 23:01

到这求解
#include<iostream.h>
void main(){
int day ,x1,x2;
day=9;x2=1; x2=1 表示第十天的一个桃子
while(day>0){
x1=2*(x2+1);  第十天一个桃子+1 乘以2 就是第九天的 以此类推
x2=x1;        
day--;}
cout<<x2<<endl;}

落叶星空 发表于 2008-4-25 23:01

倒着求解!!!

jasjac 发表于 2008-4-26 10:31

递归求解

递归求解

sunkaidong 发表于 2008-4-26 10:41

用个循环就可以了...

lycde125 发表于 2008-4-26 14:10

递归,循环都可以,方法很多

readyforlove 发表于 2008-5-1 09:02

#include <iostream.h>
void main()
{
        int remain(int n);//前n天剩下的桃子
        cout<<remain(10);
        cout<<endl;
}
int remain(int n)
{
        if(n==1)             //第十天剩下
                return(1);
        else
                return(2*(remain(n-1)+1));
}

youzhonghui218 发表于 2008-5-1 21:24

递归的话 如果数字很大发费他多了吧

sskicgah 发表于 2008-5-1 23:08

这个问题还算简单,逆着求[tk20]

页: [1]

编程论坛