6.给定数组{{1,2,3,4,5},{4,3,2,1,0},{6,7,8,9,0}, {9,8,7,6,5},{3,4,5,6,7}}设计一个函数fun,其功能是:输出M行M列整数方阵,然后求两条对角线上各元素之和,返回此和数。
时间: 2023-06-16 11:04:53 浏览: 44
以下是实现该函数的代码:
```python
def fun(arr):
M = len(arr)
res = 0
# 输出M行M列整数方阵
for i in range(M):
for j in range(M):
print(arr[i][j], end=' ')
print()
# 求两条对角线上各元素之和
for i in range(M):
res += arr[i][i] # 左上到右下的对角线
res += arr[i][M-i-1] # 右上到左下的对角线
return res
```
示例输出:
```
1 2 3 4 5
4 3 2 1 0
6 7 8 9 0
9 8 7 6 5
3 4 5 6 7
左上到右下的对角线之和为:24
右上到左下的对角线之和为:29
总和为:53
```
调用该函数的示例代码:
```python
arr = [[1,2,3,4,5],[4,3,2,1,0],[6,7,8,9,0],[9,8,7,6,5],[3,4,5,6,7]]
res = fun(arr)
print("左上到右下的对角线之和为:%d" % (res // 2))
print("右上到左下的对角线之和为:%d" % (res // 2))
print("总和为:%d" % res)
```
相关问题
从给定数组中提取所有的奇数([0,1,2,3,4,5,6,7,8,9])
可以使用一个循环来遍历数组中的每个元素,判断该元素是否为奇数,如果是,则将其添加到一个新的数组中。代码示例如下:
```python
# 给定数组
arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# 新建空数组,用于存储奇数
odd_arr = []
# 遍历数组中的每个元素
for num in arr:
# 判断该元素是否为奇数
if num % 2 != 0:
# 如果是奇数,添加到新数组中
odd_arr.append(num)
# 打印结果
print(odd_arr) # [1, 3, 5, 7, 9]
```
其中 `%` 表示取模运算,即求除法的余数。如果一个数除以 2 的余数为 1,那么它就是奇数。
. 给定数组a[10]={1,2,3,4,5,6,7,8,9,10},用顺序表L进行存储 java,(1) 在指定的i位置处插入元素33
在Java中,可以使用ArrayList来实现顺序表的存储。具体实现方法如下:
1. 首先需要导入java.util包中的ArrayList类。
2. 创建一个ArrayList对象,并将数组a中的元素添加到该对象中。
3. 在指定位置i处插入元素33,可以使用ArrayList类中的add方法,将33插入到i位置处。
4. 最后,可以使用for循环遍历ArrayList对象中的元素,并输出结果。
具体代码如下:
```
import java.util.ArrayList;
public class Main {
public static void main(String[] args) {
int[] a = {1,2,3,4,5,6,7,8,9,10};
ArrayList<Integer> L = new ArrayList<Integer>();
for (int i = 0; i < a.length; i++) {
L.add(a[i]);
}
int i = 3; // 在第3个位置插入元素33
L.add(i, 33);
System.out.println("插入元素后的结果为:");
for (int j = 0; j < L.size(); j++) {
System.out.print(L.get(j) + " ");
}
}
}
```