java每日一练——第八天:鸡兔同笼

题目描述

鸡和兔关在一个笼子里,鸡有2只脚,兔有4只脚,没有例外。已知现在可以看到笼子里m个头和n只脚,求鸡和兔子各有多少只?
输入
输入两个整数heads和feet,分别代表笼子里头的个数和脚的个数。(假设heads和feet都在合法的数据范围内)

输出
依次输出鸡和兔的只数。(数字为0的也要输出)

在这里插入图片描述

问题分析

在这里插入图片描述
我采用的方法是设两个变量法,既分别设鸡和兔为j和t;
当然还有另一种方法设一个变量例如设鸡为j,则兔=头数-j;(这里就不再阐述,有兴趣的小伙伴,可以自行研究,评论区分享一下。)

代码再下面,总体来说就是实现了上图的两个式子,再加了一个p进行跳出判断。
如果,不是很理解的小伙伴建议,像这样调试,用简单的数跑一遍,(亲测这是up最快熟悉代码的方式)
在这里插入图片描述

代码实现

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        int heads = 0, foot = 0, j = 0, t = 0;  //头,脚,鸡,兔
        int p = 0;  //用于判断是否满足条件,满足跳出
        Scanner sc = new Scanner(System.in);
        heads = sc.nextInt();
        foot = sc.nextInt();
        for (; j <=heads; j++) {
            t = 0;//重置t
            for (t = 0; t <=heads; t++) {
                if (j + t == heads)
                    if (2 * j + 4 * t == foot) {
                        p = 1;
                        break;
                    }
            }
            if (p == 1)
                break;

        }
        System.out.print(j + " " + t);
    }

}

运行结果

在这里插入图片描述

网上参考


有些东西今天想不明白,睡一觉,半夜就明白了,然后半夜高兴的起来写完
在这里插入图片描述

结语

水平有限,如有错误,还望大神指正;(^_−)☆

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木心Fx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值