编程:小孩吃梨

来源:百度知道 编辑:UC知道 时间:2024/05/28 02:56:06
编程题目:小孩吃梨
• ( 1 ) 程序功能:小孩买了一些梨,当即吃了一半,还不过瘾,有多吃了一个;第二天早上又将剩下的梨吃掉一半,有多吃了一个。以后每天早上都吃了前一天剩下的一半,并又多吃一个。到第 18 天只剩下一个梨了,问小孩共买了多少个梨?
• ( 2 ) 算法指导:本实例使用“倒推法”来解决小孩吃梨问题。直到最后一天的梨数,可以一天一天倒推到第一天的梨的个数。假设敌 n 填的梨个数为 Xn ,则前一天的梨个数为 Xn-1 ,那么, Xn=Xn-1-((Xn-1)/2+1)=(Xn-1)/2-1 。因此,迭代公式为 Xn-1=2(Xn+1) ,初始条件为 X18=1 。据此,可以一步一步倒推到第一天的梨的个数。
希望高手能用C语言编程并能运行
最好能在2号前编出来谢谢了

用一个循环程序:
#include<stdio.h>

int function()
{
int i;
x=1;
for(i=1;i<=18;i++)
x=(x+1)*2;
return x;
}
main()
{
printf( "%d",function())
return 0;
}

没有编译器所以没有调试,不过应该没错吧。有一点你没说清楚的,第18天到底吃没吃?你自己看着改一下吧

2