这个代码能不能这样解释?
海滩上有一堆桃子,五只猴子来分。第1只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个吃掉,拿走了一份。第二只猴子把剩下的桃子又平均分为五份,又多了一个,它同样把多的一个吃掉,拿走了一份,第3、第4、第5只猴子都是这样做的。
问海滩上原来最少有多少个桃子。
#include<stdio.h>
#include<stdlib.h>
int main()
{
int x
,i=0,j=1;
while(i<5){
x=4*j;//第五个猴子留下的桃子数。
for(i=0;i<5;i++)
{
if(x%4!=0){break;}
x=(x/4)*5+1;//遍历找出第四只,第三只,第二只,第一只 猴子留下的桃子,和最初所有的桃子
}
j++;
}
printf("%d\n",x);
return 0;
} 行不行你看看结果对不对 本帖最后由 910201513 于 2019-2-14 13:21 编辑
可以啊,没毛病啊 楼主看注释分析 遇到问题要动手多思考 多演算 不要觉得麻烦就放弃等着别人给答案
#include<stdio.h>
#include<stdlib.h>
int main()
{
int x
,i=0,j=1;
while(i<5){
x=4*j;//假设这是最后一个猴子留下的桃子
for(i=0;i<5;i++)
{
if(x%4!=0){break;}//上一个猴子留下的是否能分成四份 以为它分了五份 自己拿走一份 剩下的应该是四份 不能结束循环 j++
x=(x/4)*5+1;//从假设的最后留下的桃子 一次算出上一个猴子留下的桃子从而推算出最终的桃子
}
j++;
}
printf("%d\n",x);
return 0;
} 82457097 发表于 2019-2-14 14:00
楼主看注释分析 遇到问题要动手多思考 多演算 不要觉得麻烦就放弃等着别人给答案
#include
#include
这是我自己分析的,我想问的是我分析得对不对
本帖最后由 82457097 于 2019-2-14 14:13 编辑
NYJYA 发表于 2019-2-14 14:10
这是我自己分析的,我想问的是我分析得对不对
你分析的对 82457097 发表于 2019-2-14 14:12
你分析的对
谢谢
页:
[1]