#include <iostream>
#include <iomanip>
#include <ctime>
using namespace std;
void mas2(int **tf, int nf, int mf, int r_min, int r_max);// функция создает 2-мерный массив
//случайных чисел
void print(int **tf, int nf, int mf);// функция печати массива
void min_mas(int **tf1, int nf, int mf, int &min);//
//функция находит миним. элемент массива min
int main()
{
setlocale(0,"");
int n = 5;
int m = 8;
int **a = new int *[n]; // указатель на массив указателей на int
for(int i = 0; i < n; i++)
a[i] = new int [m];
int min; // переменная для min элемента массива
mas2(a,n,m,-100,50);
print(a,n,m);
min_mas(a,n,m,min);
cout << "минимальный элемент = " << min <<endl;
//заменяем положительные элементы в первых двух строках на min
for(int i=0;i<2;i++)
for(int j=0;j<m;j++)
if(a[i][j]>0) a[i][j]=min;
// Выводим преобрарзованный массив
print(a,n,m);
system("pause");
return 0;
}
// инициализация массива случайными числами
void mas2(int **tf, int nf, int mf, int r_min, int r_max)// функция создает 2-мерный массив
//случайных чисел
{
srand((unsigned int) time(NULL)); // рандомизация генератора
for(int i=0; i<nf; i++) // цикл по строкам
for(int j=0; j<mf; j++) // цикл по столбцам
tf[i][j]=rand() % (r_max - r_min) + r_min; // инициализация эл-та массива
|
|
return; // возврат в место вызова функции
}
// функция вывода массива
void print(int **tf, int nf, int mf)// функция печати массива
{
cout << endl;
for(int i=0; i<nf; i++)
{
for(int j=0; j<mf; j++)
cout << setw(5) << tf[i][j];
cout << endl << endl;
}
return; // возврат обратно в место вызова
}
void min_mas(int **tf1, int nf, int mf, int &min)//
//функция находит миним. элемента массива min
{
min=tf1[0][0];
for(int i=0; i<nf; i++)
for(int j=0; j<mf; j++)
if(tf1[i][j]<min) min=tf1[i][j];
return; // возврат обратно в место вызова
}