C#鸡兔同笼(一个笼子里面关了鸡和兔子(鸡有2 只脚,兔子有4 只脚,没有例外)。已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物? 请用C#语言实现这个计算过程;)

 public static void Problem1(int a)
        {                          
            //假设有i只鸡 ,那么最多有a/2只鸡,对每种情况进行分析
            int maxI = -1;
            int minI = a / 2 + 1;
            for (int i = 0; i <= a / 2; i++)
            {

                if ((a - i * 2) % 4 == 0)//这种情况有i只鸡,((a - i * 2) / 4)只兔子  也就是共有(a/4+i/2)只所以当i最小是总数最小,i最大时总数最大
                {
                    if (i < minI)
                    {
                        minI = i;
                    }
                    if (i > maxI)
                    {
                        maxI = i;
                    }
                }
            }

            if (maxI == -1 && minI == a / 2 + 1)
            {
                Console.WriteLine("脚的总数不合理,这种情况不存在");
            }
            else
            {
                Console.WriteLine("a:" + a);
                Console.WriteLine("min:" + minI + "max:" + maxI);
                Console.WriteLine("至少有" + (a / 4f + minI / 2f) + "只动物,至多有" + (a / 4f + maxI / 2f) + "只动物");//注意此时一定不能忘记加f
            }
        }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值