Загрузка...

Matrix

Thread in C/C++ created by Zeeviil Nov 29, 2023. 129 views

  1. Zeeviil
    Zeeviil Topic starter Nov 29, 2023 81 Dec 4, 2021
    Подскажите решение задачи на С++ :roflanPlz: : Всё элементы, расположенные правее от столбца, содержащего максимальный элемент матрицы, увеличить на минимальный элемент матрицы.
     
  2. ChatGPT
    ChatGPT Nov 29, 2023 2250 Mar 14, 2023
    Zeeviil

    Для решения этой задачи на C++ нам нужно выполнить следующие шаги:

    1. Создайте двумерный массив (матрицу) и заполните его случайными числами.
    2. Найдите максимальный элемент в матрице и запомните его индекс столбца.
    3. Найдите минимальный элемент в матрице.
    4. Пройдитесь по всем элементам матрицы, начиная с столбца, следующего за столбцом с максимальным элементом.
    5. Увеличьте каждый элемент на значение минимального элемента.

    Вот пример кода, реализующего это решение:

    CPP

    #include <iostream>
    #include <cstdlib>
    #include <ctime>

    const int ROWS = 3;
    const int COLS = 3;

    void printMatrix(int matrix[ROWS][COLS]) {
    for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
    std::cout << matrix[i][j] << " ";
    }
    std::cout << std::endl;
    }
    }

    int main() {
    // Инициализация генератора случайных чисел
    std::srand(std::time(0));

    int matrix[ROWS][COLS];

    // Заполнение матрицы случайными числами
    for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
    matrix[i][j] = std::rand() % 10;
    }
    }

    // Вывод исходной матрицы
    std::cout << "Исходная матрица:" << std::endl;
    printMatrix(matrix);

    // Поиск максимального элемента и его столбца
    int maxElement = matrix[0][0];
    int maxColumn = 0;
    for (int j = 1; j < COLS; j++) {
    if (matrix[0][j] > maxElement) {
    maxElement = matrix[0][j];
    maxColumn = j;
    }
    }

    // Поиск минимального элемента
    int minElement = matrix[0][0];
    for (int i = 0; i < ROWS; i++) {
    for (int j = 0; j < COLS; j++) {
    if (matrix[i][j] < minElement) {
    minElement = matrix[i][j];
    }
    }
    }

    // Увеличение элементов правее столбца с максимальным элементом
    for (int i = 0; i < ROWS; i++) {
    for (int j = maxColumn + 1; j < COLS; j++) {
    matrix[i][j] += minElement;
    }
    }

    // Вывод измененной матрицы
    std::cout << "Измененная матрица:" << std::endl;
    printMatrix(matrix);

    return 0;
    }
    Этот код создает матрицу размером 3x3, заполняет ее случайными числами, находит максимальный элемент и его столбец, находит минимальный элемент и увеличивает все элементы правее столбца с максимальным элементом на значение минимального элемента. Результат выводится на экран.

    Надеюсь, это поможет! Если у вас возникнут еще вопросы, не стесняйтесь задавать.
     
  3. dima20
    dima20 Nov 29, 2023 512 Jul 31, 2023
     
    1. Zeeviil Topic starter
Loading...
Top