Вопрос задан 24.02.2019 в 22:51. Предмет Информатика. Спрашивает Шухрова Маргарита.

Дан массив А(n, m). Строку, содержащую максимальный элемент, поменять местами со строкой,

содержащей минимальный элемент.
0 0
Перейти к ответам

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

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

#include <iostream>
#include <iomanip>
int main()
{
    const int n = 5;
    const int m = 3;
    int A[n][m];

    for (int i = 0; i < n; i++)                //заполняем как-нибудь массив
        for (int j = 0; j < m; j++)
            A[i][j] = (i - 3) * (j + 3);  

    for (int i = 0; i < n; i++)                //выведем исходную матрицу на экран
    {
        for (int j = 0; j < m; j++)
            std::cout << std::setw(4) << A[i][j];
        std::cout << '\n';
    }

    int maxEl = A[0][0];
    int indexMax = 0;
    for (int i = 0; i < n; i++)  //найдем максимальный элемент
    {
        for (int j = 0; j < m; j++)
            if (A[i][j] > maxEl)
            {
                maxEl = A[i][j];
                indexMax = i; //номер строки с максимальным элементом
            }
    }

    int minEl = A[0][0];
    int indexMin = 0;
    for (int i = 0; i < n; i++)  //найдем минимальный элемент
    {
        for (int j = 0; j < m; j++)
            if (A[i][j] < minEl)
            {
                minEl = A[i][j];
                indexMin = i; //номер строки с минимальным элементом
            }
    }

    for (int j = 0; j < m; j++)   //меняем строки
    {
        int temp;
        temp = A[indexMax][j];
        A[indexMax][j] = A[indexMin][j];
        A[indexMin][j] = temp;
    }

    std::cout << "\n\n";
    for (int i = 0; i < n; i++)     //выведем полученную матрицу на экран
    {
        for (int j = 0; j < m; j++)
            std::cout << std::setw(4) << A[i][j];
        std::cout << '\n';
    }

    return 0;
}

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

Для решения данной задачи, необходимо найти строку, содержащую максимальный элемент, и строку, содержащую минимальный элемент в массиве A(n, m). Затем поменять местами эти две строки.

Шаги для решения задачи:

1. Найти максимальный и минимальный элементы в массиве A(n, m). 2. Найти индексы строк, содержащих максимальный и минимальный элементы. 3. Поменять местами строки с найденными индексами.

Примерный код для решения задачи:

```python import numpy as np

# Создание массива A(n, m) A = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])

# Нахождение максимального и минимального элементов max_element = np.max(A) min_element = np.min(A)

# Нахождение индексов строк с максимальным и минимальным элементами max_row_index = np.where(A == max_element)[0][0] min_row_index = np.where(A == min_element)[0][0]

# Поменять местами строки с найденными индексами A[[max_row_index, min_row_index]] = A[[min_row_index, max_row_index]]

# Вывод результата print(A) ```

Примечание: В приведенном коде используется библиотека NumPy для работы с массивами. Если вы не используете NumPy, вам может потребоваться изменить код для работы с обычными списками или другими библиотеками.

Результат:

После выполнения кода, строки, содержащие максимальный и минимальный элементы, будут поменяны местами в массиве A(n, m).

Пример вывода: ``` [[7 8 9] [4 5 6] [1 2 3]] ```

Пожалуйста, обратите внимание, что приведенный код является примером и может потребоваться доработка в зависимости от вашей конкретной ситуации.

0 0

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

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

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