当前位置: 首页 > 工具软件 > 鱼了个鱼 > 使用案例 >

五个人捕鱼和分鱼的计算

翟善
2023-12-01

#include <stdio.h>
/捕鱼和分鱼:A、B、C、D、E五个人在某夜合伙捕鱼,到第二天凌晨时都疲惫不堪,于是各自找地方睡觉。
日上三杆,A第一个醒来,他将鱼分为5份,把多余的一条鱼扔掉,拿走自己的一份。B第二个醒来,也将鱼
分为五份,把多余的一条鱼扔掉,拿走自己的一份。C、D、E依次醒来,也按同样的方法拿鱼。问他们台伙
至少捕了多少条鱼?每个人醒来时见到了多少鱼?《C语言入门很简单》第136页习题。(马磊等编著)
/

int main(void)
{
int a, b, c, d, e; //分别用a,b,c,d,e来代表A,B,C,D,E五个人醒来时所见到的鱼的条数(为了对应)。

for(a=6; ;a++)  // A第一个醒来,看到的鱼至少应该是6,才能分成5份,把多出的1条扔掉。因此 a=6。 
{
    b=(a-1)/5 * 4;  //a是A看到的鱼, 所以a-1除以5,再乘上4,就是B醒来看到的鱼。下面以此类推。 
    c=(b-1)/5 * 4;
    d=(c-1)/5 * 4;
    e=(d-1)/5 * 4;
    
	if(a%5==1 && b%5==1 && c%5==1 && d%5==1 && e%5==1) 
		{
			printf("五人至少合伙捕了 %d 条鱼。\n", a);
			printf("每个人醒来时见到的鱼:A=%d B=%d C=%d D=%d E=%d\n", a, b, c, d, e);
			break;
		}		
}	
return 0;

}

 类似资料: