鸡兔同笼
2014-10-08 20:03
162 查看
问题: 今有鸡、兔若干,它们共有a个头和b只脚,问鸡兔各多少
解决方案 1、抬腿,即鸡“金鸡独立”,兔两个后腿着地,前腿抬起,腿的数量就为原来数量的一半。
2、现在鸡有一只脚,兔有两只脚。笼子里只要有一只兔子,脚数就比头数多1。
3、那么脚数与头数的差就是兔子的只数。
4、最后用头数减去兔的只数就得出鸡的只数。
所以,我们可以总结出这样的公式:兔子的只数=总腿数÷2-总头数
(3) 源程序代/************************************
鸡兔同笼
输入:输入两个数head,foot
输出:输出为鸡的数量chicken,兔的数量 rabbit
**************************************/
#include<stdio.h>
int main(void)
{
int head,foot;
int chicken;
int rabbit;
printf("请输入头的数量:");
scanf("%d",&head);
printf("请输入的脚的数量:");
scanf("%d",&foot);
if(foot%2!=0)
{
printf("脚的数量为双数");
return 0;
}
if((foot/4)>head)
{
printf("输入不符合要求");
return 0;
}
rabbit=foot/2-head;
chicken=head-rabbit;
if(rabbit<0||chicken<0)
{
printf("输入不符合要求");
return 0;
}
printf("兔的数量%d",rabbit);
printf("鸡的数量%d",chicken);
}
码
解决方案 1、抬腿,即鸡“金鸡独立”,兔两个后腿着地,前腿抬起,腿的数量就为原来数量的一半。
2、现在鸡有一只脚,兔有两只脚。笼子里只要有一只兔子,脚数就比头数多1。
3、那么脚数与头数的差就是兔子的只数。
4、最后用头数减去兔的只数就得出鸡的只数。
所以,我们可以总结出这样的公式:兔子的只数=总腿数÷2-总头数
(3) 源程序代/************************************
鸡兔同笼
输入:输入两个数head,foot
输出:输出为鸡的数量chicken,兔的数量 rabbit
**************************************/
#include<stdio.h>
int main(void)
{
int head,foot;
int chicken;
int rabbit;
printf("请输入头的数量:");
scanf("%d",&head);
printf("请输入的脚的数量:");
scanf("%d",&foot);
if(foot%2!=0)
{
printf("脚的数量为双数");
return 0;
}
if((foot/4)>head)
{
printf("输入不符合要求");
return 0;
}
rabbit=foot/2-head;
chicken=head-rabbit;
if(rabbit<0||chicken<0)
{
printf("输入不符合要求");
return 0;
}
printf("兔的数量%d",rabbit);
printf("鸡的数量%d",chicken);
}
码