请问大神怎么做越简单越好
如果有帮助的话,请点击右上角【采纳】按钮,支持一下!!
public static void main(String[] args)
{
int a1;
int a2;
for (a1 = 0; a1 <= 94; a1++)
{
for (a2 = 0; a2 <= 94; a2++)
{
if (2*a1 + 4*a2 ==94)
System.out.println("a1=" + a1 + "\ta2=" + a2);
}
}
}
int a1,a2;
int flag = 0;
for (int i = 1;i<=35;i++)
{
for(int j = 1;j<=35;j++){
if(2*i+4*j == 94){
a1 = i;
a2 = j;
flag = 1;
System.out.println("a1=" + a1 + " a2=" + a2);
break;
}
}
if(flag)
break;
}
if(flag == 0)
System.out.println("没有找到合适的数");
你这简化以后就是:
for (int i = 0; i <= 35; i++) {
if (a1 * 6 == 94) {
}
}
这个方程的解是个小数,但是由于 a1
是整型的,所以 a1 * 6 == 94
永远为 false
,即:永远不会执行 if
里面的语句。
我给你一个最简单的
for(int a1= 1; a1 <=35; a1++){
int tmp = 94 - 2*a1;
if(tmp < 0) break;
if(tmp%4 == 0) {
System.out.println("a1=" + a1 + " a2=" + tmp/4);
}
}