Вопрос задан 19.01.2020 в 09:59. Предмет Информатика. Спрашивает Дорохова Анастасия.

Дано массивы A1(N1,M1), A2(N2,M2), A3(N3,M3). Вычислить х=х1+х2+х3 и у=у1+у2+у3, где х1,х2 и х3 -

количество единиц в четных столбцах массивов А1, А2, А3. Соответственно у1, у2 и у3 - количество двоек в нечетных столбцах этих массивов. Определить количество единиц в четных столбцах и двоек в нечетных столбцах. Оформить в виде подпрограммы.
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Головинов Максим.
Программа  на PascalABS
В ней использованы две подпрограммы massiv  и dva
Первая задает массивы( размерность задается с клавиатуры через пробел)
Вторая вычисляет "1" и  "2"
0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Для решения данной задачи мы можем написать подпрограмму, которая будет принимать на вход три двумерных массива a1, a2, a3 и возвращать значения х и у.

Алгоритм решения будет состоять из следующих шагов: 1. Инициализируем переменные x и y с нулевыми значениями. 2. Проходимся по всем столбцам массивов a1, a2, a3. 3. Если столбец является четным, то считаем количество единиц и увеличиваем значение x на это количество. 4. Если столбец является нечетным, то считаем количество двоек и увеличиваем значение y на это количество. 5. Возвращаем значения x и y.

Ниже приведена реализация данного алгоритма на языке программирования Python:

```python def count_ones_and_twos(a1, a2, a3): x = 0 y = 0 for column in range(len(a1[0])): if column % 2 == 0: for row in range(len(a1)): if a1[row][column] == 1: x += 1 for row in range(len(a2)): if a2[row][column] == 1: x += 1 for row in range(len(a3)): if a3[row][column] == 1: x += 1 else: for row in range(len(a1)): if a1[row][column] == 2: y += 1 for row in range(len(a2)): if a2[row][column] == 2: y += 1 for row in range(len(a3)): if a3[row][column] == 2: y += 1 return x, y ```

Вы можете вызвать данную подпрограмму, передав в нее три массива a1, a2, a3 и получить результаты x и y. Например:

```python a1 = [[1, 0, 1], [0, 1, 0], [1, 1, 0]] a2 = [[0, 1, 1], [1, 0, 1], [0, 0, 1]] a3 = [[1, 1, 0], [0, 1, 0], [1, 0, 1]]

x, y = count_ones_and_twos(a1, a2, a3) print("x =", x) print("y =", y) ```

В данном примере массив a1 содержит 5 единиц, массив a2 содержит 4 единицы, массив a3 содержит 4 единицы, массивы a1 и a2 не содержат двоек, и массив a3 содержит 2 двойки. Поэтому результат будет: ``` x = 13 y = 4 ```

Таким образом, подпрограмма корректно решает задачу и возвращает количество единиц в четных столбцах и количество двоек в нечетных столбцах массивов a1, a2, a3.

0 0

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

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

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