-
这个问题有两种解决方法,一种是从第9天开始计算,让第9天吃了x块,那么x+1是第9天之前没有吃的总数,第十天是1,有方程(x+1)2-1=1; x=3;
从第九天向后推断,我们得到总数。
int i=0;
int sum=4;
while(i++<9) 是总数。
另一种是从第一天开始推,但这个比较麻烦。
int i=1;
while(i++<500)
int sum=i*2;
for(int temp=0;temp<10;temp++)if(sum%2!=0)break;
else sum=sum/2-1;
if(sum=1)return i*2;
-
main()
int i,j,k;
printf("");
for(i=1;i<5;i++) 是三重循环 * for(j=1; j<5;j++)
for (k=1;k<5;k++)
if (i!=k&&i!=j&&j!=k) *确保 i、j 和 k 彼此不相同*
printf("%d,%d,%d",i,j,k);
-
谭浩强在后面的C教材练习中就有了这样的问题。
-
具体思路如下:
第10天剩余的桃子数量:1
第9天剩余的桃子数量:(1+1)*2=4
第8天剩余的桃子数量:(4+1)*2=10
。模式很明显,就是每天剩下的桃子数量是第二天加到1个桃子数量的两倍。 具体如下:
#include
void main()
拿到第一天剩下的桃子数量后,也要求是桃树采摘一次桃子的真实数量=(桃树+1)*2; 当然,也可以让循环再运行一个实现,但这是一种更好的理解方式。
printf("%d",taoshu);}
-
1. 打开可视 C++ 文件 - 新建 - 文件 - C++ 源文件
2.题目:猴子吃桃子:猴子第一天摘了几个桃子,马上吃掉了一半的桃子和1个桃子,第二天早上吃掉了剩下的桃子的一半以上,每天吃了一半以上的桃子,第10天早上只剩下一个桃子。
3. 输入预处理命令和主要功能
包括输入和输出头文件
void main() *null 类型:main 函数*
4.定义变量,确定天数和每天桃子的数量:
int a,b=1;定义变量的数据类型为整数
for(a=1;a<=9;a++) *确定天数*
b=(b+1)*2;*从第10天到第1天每天计算桃子的数量*
5.输出第1天的桃子数量:
printf("第一天,我摘了%d个桃子",b);*输出第1天的桃子数量*
6. 完整来源**:
猴子吃桃子。
猴子第一天摘了好几个桃子,一下子吃了半个以上的桃子,第二天早上吃了一半以上的桃子,第二天早上吃了一半以上的桃子,每天吃一半以上的桃子, 第10天早上只剩下一个桃子。*/
包括输入和输出头文件
void main() *null 类型:main 函数*
int a,b=1;定义变量的数据类型为整数
for(a=1;a<=9;a++) *确定天数*
b=(b+1)*2;*从第10天到第1天每天计算桃子的数量*
printf("第一天,我摘了%d个桃子",b);*输出第1天的桃子数量*
-
第 9 天:(1+1)*2=4
第八天:(4+1)*2=10
第 7 天:(10+1)*2=22
第六天:(22+1)*2=46
第 5 天:(46+1)*2=94
第四天:(94+1)*2=190
第三天:(190+1)*2=382
第2天:(382+1)*2=766
第一天:(766+1)*2=1534
于是第一天,一共采摘了768个土豆和桃子,带兄弟们去。