随机矩阵 int mat[8][8]。c++找出矩阵mat中的所有极点与鞍点。(运用函数)

该博客介绍了如何使用C++编程找出一个8x8矩阵中的极点和鞍点。极点是矩阵中所在行和列都为最大值或最小值的元素,而鞍点是所在行的最大值且所在列的最小值。博主提供了可能复杂的程序实现,包括二维数组和指针的方法。
摘要由CSDN通过智能技术生成

c++函数 设已知矩阵 int mat[8][8]。如某元素在所在行与所在列中均为最大值或最小值,则被称为极点;如某元素在所在行中是最大值,在所在列中是最小值,则被称为鞍点。编程找出矩阵mat中的所有极点与鞍点。(本人萌新,所以程序可能很复杂,不过能用)(分二维数组和指针)

//运用二维数组
#include<iostream>
using namespace std;

//该函数用来寻找极点(行列最小)
void polemin (int a[8][8])
{
   
	for(int i=0;i<8;i++)								  //确定行数
    {
   
        int t=a[i][0];
        int maxr=0;
        for(int j=1;j<8;j++)							  //进行行检查,找出行中最小的值极其所在行列
        {
   
            if(a[i][j]<t)
            {
   
                t=a[i][j];                          //找到更小值
                maxr=j;                               //找到更小值的列
             }
         }
         for(int k=0;k<8;k++)                             //进行列检查,确定行最小值是不是列最小值
		 {
   
			if(a[k][maxr]<t) break;                 //不是列最小值直接结束循环
            if(a[k][maxr]>t) continue;              //是更小值则继续往下检查
            
		}
		 if(k==8)  cout << t <<" ";                   //满足条件极为极点,输出
    }
        cout << "以上是该数列的极点(行列最小值)" << endl;
}

//该函数用来寻找极点(行列最大)
void polemax (int b[8][8])
{
   for(int i=0;i<8;i++)
    {
   
        int t=b[i][0];
        int minr=0;
        for(int j=1;j<8;j++)    
        {
   
            if(b[i][j]>t)
            {
   
                t=b
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值