要求
鸡兔同笼问题:鸡兔一共35只,笼子里脚共有94只, * 请问分别有多少只鸡和多少只兔子。
方法一
public static void main(String[] args) {
//方法1
for (int i = 0;i<=35;i++){
for (int j = 0;j<=35;j++){
//鸡2只脚、兔4只脚
if(i+j==35 && i*2+j*4==94){
System.out.println("鸡有:"+i+"只,兔有"+j+"只");
}
}
}
}
方法二
出现的问题
当通过a,b两者之间的关系给b赋值时,除法运算之后可能输出一个小数,但是除法运算后的结果只能舍弃小数部分,导致数据误差。
解决方法
1.在该赋值语句外面,添加一个if条件判断,确保a经过运算得到一个整数再赋值给b。
2.输出语句下面添加一个break;使输出一个结果后立即结束循环。(不建议)
public static void main(String[] args) {
//方法2
for (int a = 1;a<=35;a++){
//1.使用break;2.if判断没有被整除的情况(不输出)
if ((94-a*2)%4==0){
int b = (94-a*2)/4;
if (a+b==35){
System.out.println("鸡有:"+a+"只,兔有"+b+"只");
//break;
}
}
}
}