Глава 4. Алгоритмы, использующие двумерные массивы - 4.5. Изменение значений элементов, обладающих заданным свойством

E-mail Печать PDF
Рейтинг пользователей: / 11
ХудшийЛучший 
Индекс материала
Глава 4. Алгоритмы, использующие двумерные массивы
4.2. Нахождение суммы элементов
4.3. Нахождение элементов с заданным свойством
4.4. Удаление и вставка строк или столбцов матрицы
4.5. Изменение значений элементов, обладающих заданным свойством
4.6. Перестановка строк или столбцов матрицы
4.7. Алгоритмы, реализуемые с помощью вложенных циклов разного типа
Все страницы

4.5. Изменение значений элементов,
обладающих заданным свойством

Решение этих задач похоже на решение задач для одномерных массивов.

Пример 4.8. В массиве размерностью n?m к элементам четных столбцов прибавить элемент первого столбца соответствующей строки.

Дано: n, m - количество строк и столбцов массива соответственно, массив
А[n, m].

Найти новую матрицу А, содержащую n строк и m столбцов.

Столбец является четным, если его номер делится на два без остатка.

Тест

N

M

Исходная матрица

Результат

2

4

5  7  6  9
-1  0  2  10

   5  12   6  14
-1 -1   2    9

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

Фрагмент алгоритма:

нц

Для i от 1 до n выполнить

нц

Для j от 1 до m div 2 выполнить

Рассмотрим только четные столбцы матрицы.

а[i, 2 * j] = а[i, 2 * j) + а [i, 1]

кц

кц

Напомним, что операция div вычисляет частное от деления целого числа.

Пример 4.9. Заменить все отрицательные элементы матрицы противоположными по знаку.

Решение этой задачи мы рассматривали для одномерного массива. Поэтому приведем алгоритм без пояснений.

нц

Для i от 1 до n выполнить

нц

Для j от 1 до m выполнить

              Если а[i, j] < 0 то а[i, j]:= -а [i, j]

Все если

кц

кц

Задачи для самостоятельного решения

1. В каждой строке двумерного массива смените знак максимального по модулю элемента на противоположный.

2. Положительные элементы каждой строки двумерного массива умножьте на первый элемент соответствующей строки, а отрицательные - на последний элемент той же строки.

3. Замените все элементы строки с номером k и столбца с номером k1 произвольной матрицы на противоположные по знаку (элемент, стоящий на их пересечении, не заменяйте).

4. К элементам столбца k1 прибавьте элементы столбца k2.

5. Даны два двумерных массива одинаковой размерности. Создайте третий массив той же размерности, каждый элемент которого равен сумме соответствующих элементов первых двух.



 

Добавьтe Ваш комментарий

Ваше имя (псевдоним):
Ваш адрес почты:
Заголовок:
Комментарий:

Комментарии

Интересное




Похожие материалы

Партнёры