求矩阵的鞍点代码c
时间: 2023-07-16 09:17:17 浏览: 105
以下是求矩阵鞍点的 C++ 代码实现:
```c++
#include <iostream>
using namespace std;
const int MAXN = 100;
int a[MAXN][MAXN];
int main() {
int n, m;
cin >> n >> m;
// 输入矩阵
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
cin >> a[i][j];
}
}
// 求鞍点
bool flag;
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
flag = true;
for (int k = 0; k < m; k++) {
if (a[i][k] > a[i][j]) {
flag = false;
break;
}
}
if (flag) {
for (int k = 0; k < n; k++) {
if (a[k][j] < a[i][j]) {
flag = false;
break;
}
}
if (flag) {
cout << "鞍点坐标为(" << i << "," << j << ")" << endl;
return 0;
}
}
}
}
// 没有鞍点
cout << "没有鞍点" << endl;
return 0;
}
```
其中,`a` 数组存储矩阵,`n` 和 `m` 分别是矩阵的行数和列数。然后,我们依次遍历每个元素,判断是否为该行的最大值并且是否为该列的最小值,如果是,则该元素为鞍点。如果遍历完整个矩阵都没有找到鞍点,则输出“没有鞍点”。
阅读全文