Предмет: Информатика, автор: nargizmanarbekova10

Дан массив A (7,7). Найдите произведение отрицательного элемента, расположенного не на главной диагонали, и наибольшего элемента массива (максимального).
*НА ЯЗЫКЕ С++*
СРОЧНО!! заранее СПАСИБО))

Ответы

Автор ответа: nazikmuz
0

Відповідь:

#include <iostream>

#include <cstdlib>

#include <time.h>

using namespace std;

void randarr(int **arr,int n, int m){

for(int i = 0; i < n; i++){

 for(int j = 0; j < m; j++){

  arr[i][j] = rand() % 8 - 2;

 }

}

}

void printarr(int **arr,int n,int m){

for(int i = 0; i < n; i++){

 for(int j = 0; j < m; j++){

  cout << arr[i][j] << "\t";

 }

 cout << endl;

}

}

int prnegative(int **arr,int n,int m){

int product = 1;

for(int i = 0; i < n; i++){

 for(int j = 0; j < m; j++){

  if(j != i && arr[i][j] < 0){

   product *= arr[i][j];

  }

 }

}

return product;

}

int maxarr(int **arr,int n, int m){

int max = arr[0][0];

for(int i = 0; i < n; i++){

 for(int j = 0; j < m; j++){

  if(arr[i][j] > max){

   max = arr[i][j];

  }

 }

}

return max;

}

const int n = 7, m = 7;

int main(){

srand(time(NULL));

setlocale(LC_ALL, "Rus");

int **arr = new int *[n];

for (int i = 0; i < n; i++)

       arr[i]=new int[m];

randarr(arr,n,m);

printarr(arr,n,m);

cout << "\nПроизведение отрицательных елементов не на главной диагонали = " << prnegative(arr,n,m) << endl;

cout << "Максимальный елемент массива = " << maxarr(arr,n,m) << endl;

for (int i = 0; i < n; i++)

    delete[]arr[i];

   delete[]arr;

return 0;

}

Пояснення:

Похожие вопросы
Предмет: Русский язык, автор: Арсюха11111