當前位置:編程學習大全網 - 編程語言 - 用java編程壹個正方形對角線的數相加的程序

用java編程壹個正方形對角線的數相加的程序

import java.io.BufferedReader;

import java.io.InputStreamReader;

public class Test {

public static int getInput() {

int input = 0;

BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

try {

String str = br.readLine();

input = Integer.parseInt(str);

} catch (Exception e) {

System.out.println("輸入有誤,重新輸入:");

getInput();

}

return input;

}

public static int[][] createSquare(int n) {

int i, j;

int square[][] = new int[n][n];

System.out.println("輸入正方形數字矩陣:");

for (i = 0; i < n; i++) {

for (j = 0; j < n; j++) {

System.out.println("[" + (i + 1) + "]" + "[" + (j + 1) + "] :");

square[i][j] = getInput();

}

}

return square;

}

public static void main(String[] args) {

System.out.println("輸入正方形的邊長(整數):");

int i = getInput();

if (i != 0) {

System.out.println("i = " + i);

int square[][] = new int[i][i];

square = createSquare(i);

display(square);

getSum(square);

}

}

private static void getSum(int[][] square) {

int n = square.length;

int sum_1 = 0,sum_2 = 0;

int i, j;

System.out.print("\n正對角線之和為: ");

for (i = 0; i < n; i++) {

for (j = 0; j < n; j++) {

if (i==j) {

sum_1 = sum_1 + square[i][j];

System.out.print(square[i][j]);

if (i<n-1){

System.out.print("+");

}

}

}

}

System.out.println("="+sum_1);

System.out.print("\n另壹條對角線之和為: ");

for (i = 0; i < n; i++) {

for (j = 0; j < n; j++) {

if (i+j==(n-1)) {

sum_2 = sum_2 + square[i][j];

System.out.print(square[i][j]);

if (i<n-1){

System.out.print("+");

}

}

}

}

System.out.println("="+sum_2);

}

private static void display(int[][] square) {

// TODO Auto-generated method stub

int i, j;

int n = square.length;

System.out.println("該正方形數字矩陣為:");

for (i = 0; i < n; i++) {

for (j = 0; j < n; j++) {

System.out.print(square[i][j] + "\t");

}

System.out.println();

}

}

}

  • 上一篇:泡泡是什麽軟件
  • 下一篇:上技校男生學什麽專業最好
  • copyright 2024編程學習大全網