注册 登录
编程论坛 C++教室

猴子吃桃问题

tiantian0623 发布于 2008-04-23 22:46, 11414 次点击
猴子第一天摘若干个桃,当即吃了一半,还不过瘾,又多吃了一个,以后每天早上都吃剩下的一半并多吃一个,直到第十天早上只剩一个,编程求第一天共摘了多少桃子
11 回复
#2
xiaojingqqww2008-04-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
不信试试
#3
lizhongjun2008-04-24 10:45
谢谢!能不能加点注释
能不能加点注释,代表每一句语句的用意
#4
落叶星空2008-04-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;}
#5
落叶星空2008-04-25 23:01
倒着求解!!!
#6
jasjac2008-04-26 10:31
递归求解
递归求解
#7
sunkaidong2008-04-26 10:41
用个循环就可以了...
#8
lycde1252008-04-26 14:10
递归,循环都可以,方法很多
#9
readyforlove2008-05-01 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));
}
#10
youzhonghui2182008-05-01 21:24
递归的话 如果数字很大发费他多了吧
#11
sskicgah2008-05-01 23:08
这个问题还算简单,逆着求
#12
章邯2016-12-25 16:25
#include <stdio.h>
int main()
{
    int i=1,sum=1;
    while(i<=10)
    {
        sum=2*(sum+1);
        i++;
    }
    printf("%d",sum);
    return 0;
}
1