C语言练习(16)
猴子吃桃问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第10天早上想再吃时,见只剩一个桃子了。求第一天共摘了多少桃子。
在得到正确结果后,修改题目,改为猴子每天吃了前一天剩下的一半后,再吃两个。请修改程序并运行,检查结果是否正确。
#include <stdio.h>
int main() {
int peaches = 1; // 第10天早上剩下的桃子数
// 逆推从第10天到第1天
for (int day = 9; day >= 1; day--) {
peaches = (peaches + 1) * 2; // 计算前一天的桃子数量
}
printf("第一天共摘了 %d 个桃子。\n", peaches);
return 0;
}
#include <stdio.h>
int main() {
int peaches = 1; // 第10天早上剩下的桃子数
// 逆推从第10天到第1天
for (int day = 9; day >= 1; day--) {
peaches = (peaches + 2) * 2; // 计算前一天的桃子数量
}
printf("第一天共摘了 %d 个桃子。\n", peaches);
return 0;
}