Дан вещественный массив А[N][N]. Найти в массиве А наименьший из элементов, расположенных...

0 голосов
48 просмотров

Дан вещественный массив А[N][N]. Найти в массиве А наименьший из элементов, расположенных в заштрихованной части массива. Написать программу на С++


image

Информатика (176 баллов) | 48 просмотров
Дан 1 ответ
0 голосов

#include "pch.h"

#include

#include

#include

#include

using namespace std;

int main()

{

setlocale(LC_ALL, "rus");

int N,i,j;  

cout << "\nВведите количество строк или столбцов квадратной матрицы : ";</p>

cin >> N;

float **array = new float*[N];

for (i = 0; i < N; i++)

{

 array[i] = new float[N];  

}

srand(unsigned int(0));

for (i = 0; i < N; i++)

{

 for (j = 0; j < N; j++)

{

 array[i][j] =float(rand()%10+1)/float(rand()%10+1);

 cout << setprecision(1)<< setw(10)<<array[i][j] << "  " ;</p>

}

cout << endl;</p>

}

float *array1 = new float[N*N];

int c = 0;

cout << "\nЭлементы заштрихованной области: "<< endl;  </p>

for (i = 0; i < N;++i )

{

 for (j = i; j < N -i; j++)

 {

array1[c] = array[i][j];

 cout << array1[c] << "  ";</p>

 c++;

 }

 for (j = i; j >= N -i-1; j--)

 {array1[c] = array[i][j];

cout << array1[c] <<"  ";</p>

 c++;

}

}

cout << "\nКоличество элементов заштрихованной области: "<< c;</p>

int c1 = c;

float min = array1[0];

for (c = 1; c < c1; c++)

{

 if (array1[c] < min)

 {min = array1[c];

c++;

       }

}

cout << "\nМинимальный элемент заштрихованной области :" << min;</p>

for (i = 0; i < N; i++)

delete[]array[i];

delete[]array1;

cout << endl;</p>

system("pause");

return 0;

}


 




(30 баллов)