|
今天一起分析C語言的算法之:捕魚和分魚。
算法題目:
捕魚和分魚:A、B、C、D、E 五個人在某天夜里合伙去捕魚,到第二天凌晨時都疲憊不堪,于是各自找地方睡覺。
日上三桿,A第一個醒來,他將魚分為五份,把多余的一條魚扔掉,拿走自己的一份。B第二個醒來,也將魚分為五份,把多余的一條魚扔掉,拿走自己的一份。C、D、E依次醒來,也按同樣的方法拿走魚。問他們合伙至少捕了多少條魚?
1.編程思路分析
編程思路:
用C語言中while語句和if-else語句嵌套實(shí)現(xiàn)。
2.程序范例
#include <stdio.h>
main()
{
int all=6;
int aout=0;//用來放最終結(jié)果
while(1)
{
int i=5;
int y=0;
all=aout;
while(i>0)
{
if(all!=1 && all%5==1)
{
/*丟掉一條,并分成5份*/
all=(all-(all/5)-1);
i--;//做五次
y++;
}
else
{
i=0;
}
}
if(y==5)
{
printf("他們打了%d條魚",aout);
break;
}
aout++;
}
}
程序運(yùn)行結(jié)果案例:
1.jpg (14.04 KB, 下載次數(shù): 53)
下載附件
2022-8-8 14:19 上傳
|
|