Java 爪哇:无法;“暴力力量”;带for环的方程组

Java 爪哇:无法;“暴力力量”;带for环的方程组,java,Java,我刚刚开始学习Java,试图解决书中的一些快速问题。我遇到了这个问题,它要求用蛮力来解决一个方程组 许多工程和科学应用需要找到一组方程的解。例如:8x+7y=38和3x-5y=-1有一个解x=3,y=2。给定变量为x和y的两个线性方程组的整数系数,使用蛮力为x和y找到范围为-10到10的整数解 输入将以以下格式提供 8 7 38 3 -5 -1 因此,我尝试将字符串解析为int数组 Scanner scnr = new Scanner(System.in);

我刚刚开始学习Java,试图解决书中的一些快速问题。我遇到了这个问题,它要求用蛮力来解决一个方程组

许多工程和科学应用需要找到一组方程的解。例如:8x+7y=38和3x-5y=-1有一个解x=3,y=2。给定变量为x和y的两个线性方程组的整数系数,使用蛮力为x和y找到范围为-10到10的整数解

输入将以以下格式提供

8 7 38
3 -5 -1
因此,我尝试将字符串解析为int数组

        Scanner scnr = new Scanner(System.in);

        String input1[] = scnr.nextLine().split(" ");
        String input2[] = scnr.nextLine().split(" ");

        int xvar1 = Integer.parseInt(input1[0]);
        int yvar1 = Integer.parseInt(input1[1]);
        int zvar1 = Integer.parseInt(input1[2]);
        int xvar2 = Integer.parseInt(input2[0]);
        int yvar2 = Integer.parseInt(input2[1]);
        int zvar2 = Integer.parseInt(input2[2]);
        int x = 0;
        int y = 0;
        boolean havSolution = false;

        for (int i = -10; i < 11; i++) {
            for (int j = -10; j < 11; i++) {
                if ((xvar1 * i + yvar1 * j == zvar1) && (xvar2 * i + yvar2 * j == zvar2)) {
                    havSolution = true;
                    x = i;
                    y = j;
                    break;
                }
            }
        }
        if (havSolution) {
            System.out.println("x = " + x + ", y = " + y);
        } else {
            System.out.println("No Solution");
        }
        scnr.close();
Scanner scnr=新扫描仪(System.in);
字符串input1[]=scnr.nextLine().split(“”);
字符串input2[]=scnr.nextLine().split(“”);
int xvar1=Integer.parseInt(input1[0]);
int yvar1=Integer.parseInt(input1[1]);
int zvar1=Integer.parseInt(input1[2]);
int xvar2=Integer.parseInt(input2[0]);
int yvar2=Integer.parseInt(input2[1]);
int zvar2=Integer.parseInt(input2[2]);
int x=0;
int y=0;
布尔解=假;
对于(int i=-10;i<11;i++){
对于(int j=-10;j<11;i++){
if((xvar1*i+yvar1*j==zvar1)和&(xvar2*i+yvar2*j==zvar2)){
havSolution=true;
x=i;
y=j;
打破
}
}
}
如果(解决方案){
System.out.println(“x=“+x+”,y=“+y”);
}否则{
System.out.println(“无解决方案”);
}
scnr.close();
我的输出:x=1431655787,y=-10

x和y的界限都应该是[-10,10],在这里,我的输出显然超出了界限。

谢谢

for(int j=-10;j<11;i++)

for(int j=-10;j<11;j++)

for(int j=-10;j<11;i++)
非常感谢
for (int j = -10; j < 11; i++)
for (int j = -10; j < 11; j++)