Java小白入门200例56之鸡兔同笼问题

Posted 编程界明世隐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小白入门200例56之鸡兔同笼问题相关的知识,希望对你有一定的参考价值。

作者简介

作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!

引言

很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢?
其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大佬的路上一去不复返(切记要亲手练习哦)!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  55.购物卡使用分配问题
►下一篇  57.日期Date类详解

案例描述

今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?
现代文:鸡兔共35只,共94只脚,那么鸡和兔各几只?

数学方程

假设鸡有x只,兔有y只,于是可得方程:
x+y=35
2x+4y=94
接下来就是解方程了,那程序怎么来写呢?

方案1

package demo.demo56;

public class Test {

	public static void main(String[] args) {
		for(int x=0;x<=35;x++) {//鸡的数量范围
			for(int y=0;y<=35;y++) {//兔的数量范围
				if(x+y==35 && 2*x+4*y==94) {
					System.out.println("鸡的数量是"+x+",兔子的数量是"+y);
				}
			}
		}	
	}
}

运行结果:

鸡的数量是23,兔子的数量是12

方案2

package demo.demo56;

public class Test1 {

	public static void main(String[] args) {
		int y=0;
		for(int x=0;x<=35;x++) {//鸡的数量范围
			y=35-x;//兔的数量等于35 - 鸡
			if(2*x+4*y==94) {
				System.out.println("鸡的数量是"+x+",兔子的数量是"+y);
			}
		}	
	}
}

运行结果:

鸡的数量是23,兔子的数量是12

案例3

改造成while循环来处理

package demo.demo56;

public class Test2 {

	public static void main(String[] args) {
		int x=0;//鸡的数量
		int y=0;//兔的数量
		while(x<=35) {
			y=35-x;//兔的数量等于35 - 鸡
			if(2*x+4*y==94) {//符合条件
				System.out.println("鸡的数量是"+x+",兔子的数量是"+y);
			}
			//数量递增
			x++;
		}	
	}
}

运行结果:

鸡的数量是23,兔子的数量是12

小结

这节总结了“鸡兔同笼问题”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。

评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  55.购物卡使用分配问题
►下一篇  57.日期Date类详解

热门专栏推荐

1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java

以上是关于Java小白入门200例56之鸡兔同笼问题的主要内容,如果未能解决你的问题,请参考以下文章

Python之鸡兔同笼

《C#零基础入门之百识百例》(四十一)类的定义和使用 -- 鸡兔同笼

java编程题 --鸡兔同笼

鸡兔同笼问题

鸡兔同笼

4. 鸡兔同笼