问题描述
声明一下,此系列所有文章的代码实现都是使用C/C++。
鸡兔同笼问题:一个笼子里关着若干鸡和兔子(鸡2只脚,兔子4只,无例外),已知笼子里教的总数为a。则笼子里的动物最少有多少只,最多有多少只?
- 输入:
- 2
- 3
- 20
- 输出应为:
- 0
- 0
- 5 10
实现方法、数学逻辑计算法
此算法仅仅是通过数学逻辑来进行推理
#include <stdio.h>
int Max(int);
int Min(int);
int main()
{
int num, max, min;
while(1)
{
printf("Please enter the number of feet(note that the number is even, input negative exit):");
scanf("%d",&num);
if(num <= 0)
break;
if(num < 4 || num%2 != 0)
{
printf("0
");
}
else
{
if(!(num%2))
{
max = Max(num);
min = Min(num);
printf("At least:%d
There is a maximum:%d
",min,max);
}
}
}
return 0;
}
/// 定义Min函数计算最小值
int Min(int num)
{
int min;
if(num%4 == 0)
{
min = num/4;
}
else
min = num / 4 + 1;
return min;
}
/// 定义Max函数计算最大值
int Max(int num)
{
int max;
max = num/2;
return max;
}
运行结果
联系我
博客园:https://www.cnblogs.com/AWSG-Shaodw/
CSDN:https://blog.csdn.net/AngleWithShotgun/
简书:https://www.jianshu.com/u/df7323cbc116
微信公众号: