//猴子吃桃問題。猴子第一天摘下若干個桃子,當即吃了一半,好不過癮,又多吃了一個.
為靈壽等地區用戶提供了全套網頁設計制作服務,及靈壽網站建設行業解決方案。主營業務為網站設計、做網站、靈壽網站設計,以傳統方式定制建設網站,并提供域名空間備案等一條龍服務,秉承以專業、用心的態度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
//第二天早上又吃了剩下的桃子的一半,又多吃了一個。以后每天都吃了前一天剩下的一半零一個,到第10天早上想再吃的時候,就剩下一個桃子.
//求第一天共摘多少個桃子。
#includestdio.h
int main()
{
int x=1,i;
for (i=1;i=10;i++)
{
x=(x+1)*2;
}
printf("猴子第一天摘了%d個桃子\n",x);
return 0;
}
1、打開visual C++ 6.0-文件-新建-文件-C++ Source File
2、題目:猴子吃桃:猴子第1天摘下若干個桃子,當即吃掉一半多1個桃子,第2天早上又將剩下的桃子吃掉一半多1個,以后每天都吃掉前天一半多1個,到第10天早上只剩下一個桃子,求第1天猴子到底摘子多少個桃子?
3、輸入預處理命令和主函數:
#includestdio.h ? ? ? ? ?/*輸入輸出頭文件*/
void main() ? ? ? ? ? /*空類型:主函數*/
4、定義變量、確定天數和每天桃子的數量:
int a,b=1;?????????? /*定義變量的數據類型為整型*/
for(a=1;a=9;a++)????????? /*確定天數*/
b=(b+1)*2;????????? /*計算從第10天到第1天每天桃子的數量*/
5、輸出第1天桃子的數量:
printf("第一天摘了%d個桃子\n",b);???????? /*輸出第1天桃子的數量*/
6、完整的源代碼:
/*??????????????? 猴子吃桃
猴子第1天摘下若干個桃子,當即吃掉一半多1個桃子,第2天早上又將剩下的桃子吃掉一半多1個,以后每天都吃掉前天一半多1個,到第10天早上只剩下一個桃子,求第1天猴子到底摘子多少個桃子?*/
#includestdio.h????????? /*輸入輸出頭文件*/
void main()??????????? /*空類型:主函數*/
{
int a,b=1;?????????? /*定義變量的數據類型為整型*/
for(a=1;a=9;a++)????????? /*確定天數*/
b=(b+1)*2;????????? /*計算從第10天到第1天每天桃子的數量*/
printf("第一天摘了%d個桃子\n",b);???????? /*輸出第1天桃子的數量*/
}
#include
iostream.h
void
main()
{
int
day,n1,n2;
day=9;
n2=1;
//n2表示剩下的桃子
while(day0)
{
n1=(n2+1)*2;
n2=n1;
day--;
}
printf(“%d\n”,n2);
}
第二種方法
#include
stdio.h
void
main()
{
int
day,sum=1;
for(day=1;day=9;day++)
//剩一個桃子是從第九天剩下的,所以要算九次
sum=(sum+1)*2;
printf("%d\n",sum);
}
第三種:
#includestdio.h
main()
{
int
day=9,n=1;
while(day--0)
n=(++n)*2;
/*第1天的桃子數是第2天桃子數加1后的2倍*/
printf("%d",n);
}
第四中方法:
#include
"stdio.h"
main()
{
int
day,m,n;
for(n=2;;n++)
{
m=n;
for(day=1;day10;day++)
m=m/2-1;
/*m為吃剩下的桃*/
if(m==1)
/*第十天,剩下一個*/
break;
}
printf("第一天摘下的桃子數:%d\n",n);
/*n為符合條件的*/
}
#include stdio.h
int main(void)
{
int i, peach;
peach=1;
scanf("%d",i);
while(i1)
{
i--;
peach=(peach+1)*2;
}
printf("%d\n", peach);
}
程序如上,
你可以輸入第i天發現桃子數為1.
例如:你輸入
10
結果是
1534
你說的
1023
肯定是不對的,因為它都是一半后多吃1個,應該是偶數。
上面的程序,正是你題目的逆向死維,沒有用遞歸。
當前題目:c語言函數猴子吃桃問題 c語言猴子吃桃問題解析
轉載源于:http://m.newbst.com/article4/dosjgoe.html
成都網站建設公司_創新互聯,為您提供網站改版、網站設計公司、營銷型網站建設、網站設計、用戶體驗、外貿建站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯