М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
tasia51
tasia51
19.11.2020 17:54 •  Информатика

Какой ответ? Можно с решением?


Какой ответ? Можно с решением?

👇
Открыть все ответы
Ответ:
nastasyasidork
nastasyasidork
19.11.2020

using namespace std;

#include <iostream>

#include <clocale>

#include <cstdlib>

#include <iomanip>

#include <string>

#include <ctime>

void massinit(int* mass, int masssizeM, int masssizeN) {

for (int i = 0; i < masssizeM * masssizeN; i++) {

  mass[i] = rand() % 90 + 10;

}

}

void massout(int* mass, int masssizeM, int masssizeN) {

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

 for (int j = i * masssizeN; j < (i + 1) * masssizeN; j++) {

  cout << setw(3) << mass[j] << " ";

 }

 cout << endl;

}

cout << endl << endl;

}

int twodimcount(int* mass, int masssizeM, int masssizeN) {

 

int returnval = 0;

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

 int avgvalue = 0;

 for (int j = i * masssizeN; j < (i + 1) * masssizeN; j++) {

  avgvalue += mass[j];

 }

 returnval += avgvalue;

 avgvalue /= masssizeN;

 for (int j = i * masssizeN; j < (i + 1) * masssizeN; j++) {

  mass[j] += avgvalue;

 }

}

 

cout << "Новый массив:" << endl;

massout(mass, masssizeM, masssizeN);

return returnval;

}

int main() {

setlocale(LC_ALL, "rus");

system("chcp 1251");

srand(time(0));

int M = rand() % 8 + 2;

int N = rand() % 8 + 2;

int a = 0;

int* mainmass = new int[M * N];

massinit(mainmass, M, N);

cout << "Изначальный массив:" << endl;

massout(mainmass, M, N);

a = twodimcount(mainmass, M, N);

cout << "Сумма средних значений строк новой матрицы: " << a << endl;

delete[] mainmass;

system("pause");

return 0;

}

4,4(21 оценок)
Ответ:
Milagrosrr
Milagrosrr
19.11.2020

Заполняется случайными числами, можно сделать пользовательский ввод, заменив arr[i][j] = rand() % 100; на cin >> arr[i][j];

#include <iostream>

#include <random>

#include <ctime>

#include <cmath>

using namespace std;

void printArr(int** arr, size_t sizeX, size_t sizeY) {

for (size_t i = 0; i < sizeX; ++i) {

 for (size_t j = 0; j < sizeY; ++j) {

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

 }

 cout << endl;

}

}

void func1(int** arr, size_t sizeX, size_t sizeY) {

for (size_t i = 0; i < sizeX; ++i) {

 for (size_t j = 0; j < sizeY; ++j) {

  if (arr[i][j] % 2 == 1) {

   arr[i][j] *= 2;

  }

 }

}

}

void func2(int** arr, size_t sizeX, size_t sizeY) {

for (size_t i = 0; i < sizeX; ++i) {

 int32_t min = INT32_MAX;

 for (size_t j = 0; j < sizeY; ++j) {

  if (arr[i][j] < min) {

   min = arr[i][j];

  }

 }

 cout << i << ": sqrt(" << min << ") = " << sqrt(min) << endl;

}

}

int main() {

srand(time(0));

const size_t sizeX = 4, sizeY = 3;

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

for (size_t i = 0; i < sizeX; ++i) {

 arr[i] = new int[sizeY];

 for (size_t j = 0; j < sizeY; ++j) {

  arr[i][j] = rand() % 100;

 }

}

printArr(arr, sizeX, sizeY);

func1(arr, sizeX, sizeY);

cout << endl;

printArr(arr, sizeX, sizeY);

func2(arr, sizeX, sizeY);

}

4,6(20 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ