Пример 3.8. Заменить отрицательные элементы массива их абсолютными величинами.
Дано: n – размер массива, массив А = (a1, a2, … , an).
Найти массив того же размера, в котором отрицательные числа будут заменены их модулями.
Математическая модель:
Пусть k1 = 0 и k2 = 0. Если а[i] < 0, то а[i] = –а[i]. Вычисления повторяются, пока не будут просмотрены все числа массива.
Приведем фрагмент алгоритма.
нц
Для i от 1 до n повторять
Если a[i] <0 то a[i] = –a[i]
Все если
кц
нц
Для i от 1 дo n повторять {Печать элементов массива}
Вывод a[i]
кц
Тест
Данные
Результат
N= 9
A=(–1, 10, 1, –6, –5, 12, 36, –15, –21)
A=(1, 10, 1, 6, 5, 12, 36, 15, 21)
Пример 3.9. Если очередной элемент массива четный, то прибавить к нему первый, если нечетный – прибавить последний. Первый и последний элементы массива не изменять.
Дано: n – размер массива, массив А = (a1, a2, … , an).
Найти массив того же размера, в котором к четному элементу будет добавлен первый, а к нечетному – последний.
Математическая модель:
Рассмотрим все элементы массива, кроме первого и последнего. Если а[i] – четный элемент, то а[i] = а[i] + а[1], иначе а[i] = а[i] + а[n]. Процесс повторяется, пока не будут просмотрены все числа массива. Заметим, что число является четным, если оно делится на 2 без остатка.
Приведем фрагмент алгоритма.
нц
Для i от 2 до n – 1 повторять
Если a[i] Mod 2 = 0 То a[i] = a[i] + a[1]
Иначе a[i] = a[i] + a[n]
Все если
кц
Пример 3.10. Дан первый член арифметической прогрессии и ее разность. Записать в массив первые n членов прогрессии.
Обозначим m1 – первый элемент прогрессии, k – ее разность, n – размер массива.
Дано: m1, k, n.
Найти массив A[n].
Математическая модель:
При i = 1, a[1] = m1, i-й элемент массива можно найти по следующему правилу: a[i] = a[i – 1] + k, здесь i меняется от 2 до n.
Приведем фрагмент алгоритма.
a[1] = m1
нц
Для i = 2 до n повторять
a[i] = a[i–1] + k
кц
Пример 3.11. Даны два одномерных массива – А и В. Найти их скалярное произведение.
Дано: n – размер массива, А, В – массивы размера n.
Найти S – скалярное произведение двух массивов.
Математическая модель:
Скалярным произведением двух массивов одинаковой размерности называется сумма произведений соответствующих элементов:
a[1] × b[1] + a[2] × b[2] + … + a[n] × b[n], где n – количество элементов в массивах.