程序设计部分 从现实问题到计算机程序 第1关:鸡兔同笼问题

任务描述
本关任务:解决鸡兔同笼的问题。

相关知识
鸡兔同笼问题
一个笼子里面关了鸡和兔子(鸡有2只脚,兔子有4只脚,没有例外)。
已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物?

问题分析
使用数学方法,我们能很快的得到结果:要求最多,那么鸡的数量要尽可能多;要求最少,则兔子的数量要尽可能多。

那如何转化为计算机程序呢?我们可以一步一步来。

首先要读取输入的脚的总数,我们可以声明一个int型的变量:

int a; //脚的总数
cin >> a; //读取输入
然后就可以根据a的取值来分情况讨论了。

如果输入的数据为奇数,则这个数据是错误的数据,那我们就输出一句数据错误的提示。
代码如下:

if(a % 2 == 1)
{
    cout << "数据错误" << endl;
}
数据正确的情况下,我们可以进一步看看a是否是4的倍数,如果是的,则最多动物数量就是a / 2,最少是a / 4。
代码如下:

else if(a % 4 == 0)
{
    cout << a / 2 << endl; //输出最多的数量
    cout << a / 4 << endl; //输出最少的数量
}
如果不是4的倍数,那么除以4的余数只能是2,所以最多的动物数量仍为a / 2&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值