Mọi người ơi, xin giúp em với bài sau với:
Yêu cầu: Tạo một mảng số nguyên ngẫu nhiên 2 chiều MxN (với M,N nhập từ bàn phím). Tìm và in ra cực trị của mảng. Sử dụng Class.
Em đã viết đoạn code như sau nhưng không biết lỗi gì chạy không được.
#include <iostream>
#include <time.h>
class CucTri {
public:
void khoi_tao(int m,int n){
creat(m,n);
}
void xoa() {
xoa_mang();}
int get_max(int sophantu) {
return find_max(sophantu);
}
int get_min( int sophantu) {
return find_min(sophantu);
}
private:
int sophantu;
int *Mang = new int[sophantu];
void creat(int m, int n) {
srand(time(0));
for (int i = 0; i < m; i++)
{
for (int j = 0; j < n; j++)
{
Mang[n*i + j] = rand() % 100;
if (Mang[n*i + j] <10)
{
std::cout << "0" << Mang[i*n + j] << " ";
}
else
std::cout << Mang[i*n + j] << " ";
}
std::cout << std::endl;
}
}
void xoa_mang() {
delete[]Mang;
}
int find_max(int sophantu) {
int max = Mang[0];
for (int i = 0; i < sophantu; i++)
if (max < Mang[i])
max = Mang[i];
return max;
}
int find_min( int sophantu) {
int min = Mang[0];
for (int i = 0; i < sophantu; i++)
if (min > Mang[i])
min = Mang[i];
return min;
}
};
int main()
{
int n,m;
std::cout << "Nhap so phan tu mang MxN: ";
std::cin >> m >> n;
CucTri tim_cuc_tri;
tim_cuc_tri.khoi_tao(m, n);
std::cout << "Gia tri lon nhat la: " << tim_cuc_tri.get_max( m*n) << std::endl;
std::cout << "Gia tri nho nhat la: " << tim_cuc_tri.get_min( m*n) << std::endl;
tim_cuc_tri.xoa();
return 0;
}