建立一个矩阵类Matrix,存储一个4*4的矩阵并能在矩阵中查找某数。要求如下:
(1)私有数据成员
int p[4][4]:存储一个4*4的矩阵的值。
int n:矩阵的行数。
int x:存储根据查找要求在矩阵中要查找到的某数。
int row,col:存储该数所在的行、列值。
(2)公有成员函数
构造函数:初始化n的值为4,x、row、col为0。
void input(int a[][4]):将一个矩阵赋给该对象中的数组。
void find( ):在该对象存储的矩阵中查找值最小的数,保存该数及该数所在的行、列值到x、row、col中。
void print( ):按行输出矩阵的值。
(3)在主函数中测试该类,使用以下测试数据,输出矩阵的值,查找值最小的数并输出x、row、col的值。
// class6.cpp : 定义控制台应用程序的入口点。
//建立一个矩阵类Matrix,存储一个4*4的矩阵并能在矩阵中查找某数
#include "stdafx.h"
#include<iostream>
using namespace std;
class Matrix
{
public:
Matrix(){n=4;x=0;row=0;col=0;};//构造函数:初始化n的值为4,x、row、col为0。
void input(int a[][4]);//将一个矩阵赋给该对象中的数组。
void find( );//在该对象存储的矩阵中查找值最小的数,保存该数及该数所在的行、列值到x、row、col中。
void print( );//按行输出矩阵的值。
private:
int p[4][4];//存储一个4*4的矩阵的值。
int n;//矩阵的行数。
int x;//存储根据查找要求在矩阵中要查找到的某数。
int row,col;//存储该数所在的行、列值。
};
void Matrix::input(int a[4][4])
{
int i,j;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
p[i][j]=a[i][j];
}
}
}
void Matrix::find()
{
int i,j;
int min=p[0][0];
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
if(p[i][j]<=min)
{
min=p[i][j];
row=i+1;
col=j+1;
}
}
x=min;
}
}
void Matrix::print()
{
cout<<"The minimum number is:"<<x<<endl;
cout<<"row:"<<col<<" col:"<<row<<endl;
}
int _tmain(int argc, _TCHAR* argv[])
{
int i,j;
int a[4][4];
cout<<"input number :"<<endl;
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
cin>>a[i][j];
}
}
Matrix M;
M.input(a);
M.find();
M.print();
return 0;
}