一、题目
定义一个二维数组用于存储一个 矩阵的元素值,并求出这个矩阵的对角线元素之和,然后输出计算结果。
二、分析
左对角线:行列相等,即i == j
右对角线:行列相加等于行数减一,即 i+j == array.length -1
三、代码
package com.lyp.test;
import java.util.Scanner;
public class test {
public static int[] sum(int [][] array){
int[] sum = {0,0};
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array[0].length; j++) {
if (i == j){
sum[0] += array[i][j];
}
if (j == array.length - i -1){
sum[1] += array[i][j];
}
}
}
return sum;
}
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.println("请输入行数和列数:");
int x = s.nextInt();
int y = s.nextInt();
int[][] array = new int[x][y];//初始化二维数组
System.out.println("请输入数组元素");
for (int i = 0; i < x; i++) {
for (int j = 0; j < y; j++) {
array[i][j] = s.nextInt();
}
}
int[] res = sum(array);
System.out.println("对角线元素之和分别为:"+res[0]+"和"+res[1]);
}
}
四、输出结果
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/122993.html