Вопрос задан 24.06.2023 в 05:35. Предмет Информатика. Спрашивает Яновский Арсений.

В С++ будь ласка, завтра потрібно здати Записати елементи прямокутної матриці в одновимірний

масив в порядку проходження стовпців.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Рыбченко Никита.

Объяснение:

#include <iostream>

#include <ctime>

#include <vector>

using namespace std;

int main()

{

srand(time(NULL));

int rows, cols;

cin >> rows >> cols;

cout << endl;

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

vector <int> result;

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

{

arr[i] = new int [cols];

}

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

{

for (int j = 0; j < cols; j++)

{

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

cout.width(3);

cout << arr[i][j];

}

cout << endl;

}

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

{

for (int j = 0; j < rows; j++)

{

result.push_back(arr[j][i]);

}

}

cout << endl;

for (const auto& element : result)

{

cout << element << " ";

}

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

{

delete[] arr[i];

}

delete[] arr;

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

У вас є прямокутна матриця, і вам потрібно записати її елементи в одновимірний масив в порядку проходження стовпців. Ось як це можна зробити в мові програмування C++:

cpp
#include <iostream> using namespace std; int main() { int rows, cols; cout << "Введіть кількість рядків: "; cin >> rows; cout << "Введіть кількість стовпців: "; cin >> cols; // Створюємо прямокутну матрицю int **matrix = new int*[rows]; for (int i = 0; i < rows; i++) { matrix[i] = new int[cols]; } // Заповнюємо матрицю cout << "Введіть елементи матриці:\n"; for (int i = 0; i < rows; i++) { for (int j = 0; j < cols; j++) { cin >> matrix[i][j]; } } // Створюємо одновимірний масив для зберігання елементів стовпців int *resultArray = new int[rows * cols]; // Записуємо елементи стовпців в одновимірний масив int index = 0; for (int j = 0; j < cols; j++) { for (int i = 0; i < rows; i++) { resultArray[index] = matrix[i][j]; index++; } } // Виводимо одновимірний масив cout << "Елементи в одновимірному масиві (порядок проходження стовпців):\n"; for (int i = 0; i < rows * cols; i++) { cout << resultArray[i] << " "; } cout << endl; // Звільняємо виділену пам'ять for (int i = 0; i < rows; i++) { delete[] matrix[i]; } delete[] matrix; delete[] resultArray; return 0; }

У цьому коді спочатку користувач вводить кількість рядків і стовпців, потім вводить елементи матриці. Потім елементи зчитуються в одновимірний масив в порядку проходження стовпців, і цей одновимірний масив виводиться на екран. На завершення, пам'ять для матриці і одновимірного масиву звільняється.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос