用Java实现,输入N个数,将它们排列成一个n*n(=N)矩阵,求出他们的主对角线元素之和,并输出
时间: 2024-05-29 17:08:19 浏览: 2
好的,这个问题可以解答。以下是Java代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
int[][] matrix = new int[n][n];
int index = 0;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
matrix[i][j] = arr[index++];
}
}
int sum = 0;
for (int i = 0; i < n; i++) {
sum += matrix[i][i];
}
System.out.println(sum);
}
}
输入样例:
3
1 2 3 4 5 6 7 8 9
输出样例:
15
相关问题
输入N个数,将它们排列成一个n*n(=N)矩阵,求出他们的主对角线元素之和,并输出
以下是Python实现此问题的代码:
```
n = int(input())
arr = []
for i in range(n):
arr.append(int(input()))
arr.sort()
sum = 0
for i in range(n):
sum += arr[i*n+i]
print(sum)
```
你可以将N个数输入程序,程序会自动输出它们排列成的矩阵的主对角线元素之和。如有需要,你可以修改代码适应其他语言的编写。
输入一个 n*n 的矩阵,求出每行的和与每列的和。
可以先定义一个 n*n 的矩阵,然后使用双重循环遍历每一行和每一列,分别计算它们的和。具体实现可以参考以下代码:
```
n = 3 # 定义矩阵的大小为 3*3
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] # 定义一个矩阵
# 计算每一行的和
row_sum = []
for i in range(n):
sum =
for j in range(n):
sum += matrix[i][j]
row_sum.append(sum)
# 计算每一列的和
col_sum = []
for j in range(n):
sum =
for i in range(n):
sum += matrix[i][j]
col_sum.append(sum)
print("每行的和为:", row_sum)
print("每列的和为:", col_sum)
```
输出结果为:
```
每行的和为: [6, 15, 24]
每列的和为: [12, 15, 18]
```