本文实例讲述了java使用for循环解决经典的鸡兔同笼问题。分享给大家供大家参考,具体如下:
for循环经典,鸡兔同笼问题
问题:鸡兔同笼,鸡兔一共35只。笼子里脚一共94只,请问分别有多少只鸡和兔?
思路:首先明确思路,鸡的数量*2加上兔子的数量*4等于脚的总数94,这是一个关键点,
代码很简单,但是关键的条件却要花很多时间去找,要是不明白的真的是很烦啊。
利用for循环列举出所有可能直到if满足条件,
列出表达式 鸡*2 加 兔*4 等于 脚总数94 ,这是if的判断条件,满足就可以直接输出鸡和兔子的数量。
package demo; public class loopdemo4 { public static void main(string[] args) { // 鸡兔一共35只,笼子里脚一共94只,求分别有多少只鸡和多少只兔子 // 鸡的数量*2加上兔子的数量*4等于94。 // 利用for循环列举出所有可能直到if满足条件。 int sum = 35; int foot = 94; // 因为不会有奇数个脚,所以都用int型 for (int chook = 1; chook <= foot / 2; chook++)// 假设的鸡的个数 { int rabbit = sum - chook; // 假设的兔子的个数 if (rabbit * 4 + chook * 2 == foot)// 成立时就是正确的鸡兔个数,直接输出并结束循环 { system.out.println("鸡的个数是:" + chook); system.out.println("兔的个数是:" + rabbit); break; } } } }
运行结果:
更多关于java算法相关内容感兴趣的读者可查看本站专题:《java数据结构与算法教程》、《java操作dom节点技巧总结》、《java文件与目录操作技巧汇总》和《java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。
如对本文有疑问, 点击进行留言回复!!
集合框架——Map、泛型以及Collection算法常用方法
Elasticsearch 升级 7.x 版本后,我感觉掉坑里了
Mybatis的插件运行原理以及如何编写一个Mybatis的插件
网友评论