版权声明:本文为博主原创文章,未经博主允许不得转载。
/* (程序头部注释开始)
版权声明:保留个人权利。 如程序有不当之处,敬请指正。
* 文件名称: 《一些简单的java编程题(5) ————鸡兔同笼问题》
* 作 者: 那就去巴黎
* 完成日期: 2018 年 02 月 01 日
* 版 本 号: JDK 9.0.1
问题描述:
//已知总头数和总脚数,求鸡、兔各多少只。
题目分析:
运用穷举算法,判断数量关系是否成立,并输出数值。
* (程序头部的注释结束)
*/
package questions;
import java.util.Scanner; //导入java.util包中的Scanner这个工具类
public class Q5
{
static int chicken,rabbit;// static 声明的静态变量。用static声明的属性是所有对象共享的。
public static void main(String[] args)
{
System.out.println("鸡兔同笼问题解答如下(穷举算法):");
boolean judge;
System.out.print("请输入头的数量:");
Scanner input1=new Scanner(System.in);
int m=input1.nextInt(); //头
System.out.print("请输入脚的数量:");
Scanner input2=new Scanner(System.in);
int n=input2.nextInt(); //脚
judge=found(m,n);
if(judge==true)
{
System.out.println("鸡的数量为"+chicken+"只");
System.out.println("兔的数量为"+rabbit+"只");
}
else
System.out.println("输入的数据有错,请重新输入!");
input1.close();
input2.close();
}
private static boolean found(int m, int n)
{
boolean judge=false;
int x,y; // 令 x为鸡的数量,y为兔的数量
for(x=0; x<m+1;x++) //遍历鸡的只数
{
y=m-x;
if(n==2*x+4*y) //鸡兔同笼的数量关系
{
judge=true;
chicken=x; //修改静态变量内容
rabbit=y; //修改静态变量内容
}
}
return judge;
}
}
程序运行结果如下: