鱼C论坛

 找回密码
 立即注册
查看: 1474|回复: 1

编程

[复制链接]
发表于 2022-6-13 11:27:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Description
邱老师有个6岁的儿子,一天突然问邱老师鸡兔同笼的问题怎么解决。邱老师一想,这不可能用列方程式的方法来讲,只好在网上搜了一下,终于找到了一种霸气的解决办法来讲这个问题。先换了几个数字简化了一下题目:假如一个笼子里有若干只鸡和兔子(不考虑畸形和残疾),现在数出来头有12个,脚有40只,想知道鸡和兔子各有多少只?解决办法:(通过拟人化的语气)现在爸爸手里有一种特殊的枪,每开一枪,所有的动物会自动举起一条腿。爸爸先啪啪开了两枪,这时候所有的鸡都趴在了笼子里,每只兔子却还剩下两条腿站着(这时候站着的腿数就变成了40-12-12=16),所以,兔子总共有16的一半,即8只,当然,鸡就只有12-8=4只喽。儿子听得哈哈大笑,
马上就反问了:如果有40个头,55只脚,…,邱老师一听,脸都绿了。你能写个程序,帮邱老师算算么?
Input
有若干组测试数据。每一行有两个整数,分别表示头数和脚数。00结束
Output
每行输出鸡的数量及兔子的数量,如果无解,则输出NO。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-13 11:49:02 | 显示全部楼层
本帖最后由 jhq999 于 2022-6-13 14:17 编辑

Input
有若干组测试数据。每一行有两个整数,分别表示头数和脚数。00结束
Output
每行输出鸡的数量及兔子的数量,如果无解,则输出NO。
int main()
{
        int heads=0,foots=0;
        while(scanf("%d%d",&heads,&foots))
        {
                if(heads&&foots)
                {        
                        //int a;
                        foots=foots-2*heads;
                        if(foots%2||foots<0)printf("NO");
                        else printf("%d %d",heads-foots/2,foots/2);
                }
                else 
                {
                        if(!(heads||foots))break;
                        if(heads)printf("foots is 0.");
                        else  printf("heads is 0.");
                }
                
        }
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-6 02:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表