用Python写一个函数实现求矩阵的最大和最小值,输入一个任意行任意列的矩阵,输出该矩阵元素的最大和最小值。要求输入矩阵的行数n,矩阵的列数m,矩阵各元素的值,输出最大值,最小值
时间: 2024-02-24 11:00:07 浏览: 90
好的,我来给您编写这个函数:
```python
def find_max_min(n, m, matrix):
# 初始化最大值和最小值
max_val = matrix[0][0]
min_val = matrix[0][0]
# 遍历矩阵,找出最大值和最小值
for i in range(n):
for j in range(m):
if matrix[i][j] > max_val:
max_val = matrix[i][j]
if matrix[i][j] < min_val:
min_val = matrix[i][j]
# 返回最大值和最小值
return max_val, min_val
```
这个函数接收三个参数,分别是矩阵的行数n,列数m,以及矩阵本身。它会遍历矩阵,找出其中的最大值和最小值,最后返回这两个值。您可以这样调用它:
```python
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
max_val, min_val = find_max_min(3, 3, matrix)
print("最大值:", max_val)
print("最小值:", min_val)
```
输出结果为:
```
最大值: 9
最小值: 1
```
希望这个函数能够满足您的需求。
相关问题
用Python写一个函数实现求矩阵的最大值和最小值,输入一个任意行任意列的矩阵,输出该矩阵元素的最大值和最小值,要求输入矩阵的行数n,矩阵的列数m,矩阵的各元素的值,输出最大值和最小值
好的,我来给您编写这个函数:
```python
def find_max_min(n, m, matrix):
# 初始化最大值和最小值
max_val = matrix[0][0]
min_val = matrix[0][0]
# 遍历矩阵,找出最大值和最小值
for i in range(n):
for j in range(m):
if matrix[i][j] > max_val:
max_val = matrix[i][j]
if matrix[i][j] < min_val:
min_val = matrix[i][j]
# 返回最大值和最小值
return max_val, min_val
```
这个函数接收三个参数,分别是矩阵的行数n,列数m,以及矩阵本身。它会遍历矩阵,找出其中的最大值和最小值,最后返回这两个值。您可以这样调用它:
```python
matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
max_val, min_val = find_max_min(3, 3, matrix)
print("最大值:", max_val)
print("最小值:", min_val)
```
输出结果为:
```
最大值: 9
最小值: 1
```
希望这个函数能够满足您的需求。
python找出一个矩阵最后一行非零元素最小值的列索引
可以使用以下代码来实现:
```python
import numpy as np
# 创建一个示例矩阵
matrix = np.array([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 4],
[0, 0, 3, 2]])
# 找到最后一行非零元素的列索引
last_row = matrix[-1]
last_row_nonzero = np.nonzero(last_row)[0]
min_index = last_row_nonzero[np.argmin(last_row[last_row_nonzero])]
print(min_index)
```
解释一下代码:
1. 首先导入 numpy 库。
2. 创建一个示例矩阵。
3. 使用 `[-1]` 索引获取矩阵的最后一行。
4. 使用 `np.nonzero` 函数找到最后一行非零元素的列索引。
5. 使用 `np.argmin` 函数找到最后一行非零元素中的最小值索引。
6. 最后输出最小值的列索引。
注意,这里使用了 numpy 库中的函数来实现,如果不使用 numpy 库,也可以使用普通的 Python 列表和循环来实现。
阅读全文