jmu-java-m02-使用二维数组存储多元线性方程组

    科技2022-08-07  112

    题面

    可以使用二维数组存储来存储线性方程组的系数与常数。比如,对于如下3元线性方程组 3x+y+z=1 6x+2y+z=-1 -2x+2y+z=7 可以使用二位数组存储 2 1 1 1 6 2 1 -1 -2 2 1 7 编写一个程序可以存储n元线性方程组

    输入格式:

    整数n,代表n元 n行、每行n+1列线性方程组的系数与常数。系数与常数为double型。

    输出格式:

    格式化输出二维数组。注意:使用Arrays.deepToString进行格式化输出。 依次输出n行线性方程组的系数与常数。系数以 , 分隔,系数与常数之间以 = 分隔,= 之间有两个空格。

    输入样例:

    3 2 1 1 1 6 2 1 -1 -2 2 1 7

    输出样例:

    [[2.0, 1.0, 1.0, 1.0], [6.0, 2.0, 1.0, -1.0], [-2.0, 2.0, 1.0, 7.0]] 2.0, 1.0, 1.0 = 1.0 6.0, 2.0, 1.0 = -1.0 -2.0, 2.0, 1.0 = 7.0

    答案

    import java.util.Arrays; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); double[][] arr = new double[n][n + 1]; for (int i = 0; i < n; i++) { for (int j = 0; j < n + 1; j++) { arr[i][j] = scanner.nextDouble(); } } System.out.println(Arrays.deepToString(arr)); for (int i = 0; i < n; i++) { StringBuilder str = new StringBuilder(); for (int j = 0; j < n; j++) { str.append(arr[i][j]).append(", "); } str.delete(str.length() - 2, str.length()); str.append(" = ").append(arr[i][n]); System.out.println(str); } } }
    Processed: 0.009, SQL: 9