Алгоритмизация и программирование задач. Петрова М.В. - 19 стр.

UptoLike

Составители: 

19
5.3. Вычисление суммы и произведения
Если необходимо вычислить сумму значений некоторой функции
)(xfy
=
при различных значениях аргумента, целесообразно организовать цикл, в кото-
ром надо предусмотреть не только вычисление значений функции, но и накоп-
ление суммы путем прибавления полученных слагаемых к сумме всех преды-
дущих слагаемых. Формула, используемая для накопления суммы, имеет вид
nnn
yzz +=
1
. Поскольку надобности в запоминании значений всех слагаемых и
промежуточных сумм нет, в качестве
z
и
y
нужно использовать простые пере-
менные и накопление суммы вести в цикле по формуле
yzz +
=
, где знак «=»
означает присваивание значения. Если начальное значение
z предварительно
приравнять к нулю, то после первого выполнения цикла значение
z будет равно
первому значению функции.
Аналогично накапливается и произведение с той лишь разницей, что для
его накопления используется формула
zyz
=
, а начальное значение произведе-
ния должно быть равно единице.
5.3.1. Вычислить значение функции
Схема алгоритма решения этой задачи представлена на рис.11. Блок 3,
задающий начальное значение суммы, стоит перед циклом, в котором накапли-
вается эта сумма. Блок 5 вычисляет значение слагаемого и накапливает сумму.
Поскольку результат решения этой задачи одно число, блок печати стоит за
циклом и выполняется один раз.
5.3.2.Вычислить произведение положительных элементов массива (x
1,
x
2,…
x
100
).
Схема алгоритма решения задачи представлена на рис.12.
Значения сомножителей вычислять не требуется, поскольку они уже
имеются в массиве. Однако прежде чем накапливать произведение, надо прове-
рить, является ли сомножитель положительным (блок 5). Блок 3 задает началь-
ное значение произведения, равное единице. В одной из ветвей этого процесса
стоит блок 6, осуществляющий накопление произведения. При невыполнении
условия x
i
>0 никаких действий не предусматривается, а осуществляется пере-
ход к концу цикла.
5.3.3. Вычислить значения функции
=
+=
20
1
/sin
i
xixz
, если x изменяется от
0 с шагом h одновременно с i.
5.3.4. Вычислить значения функции
=
+=
15
1
/)(
i
iinz .
5.3.5. Вычислить сумму положительных элементов массива (x
1
,x
2
,…,x
55
).
5.3.6. Вычислить среднее арифметическое элементов массива (a
1
,a
2
,…,a
60
).
5.3.7. Вычислить среднее арифметическое отрицательных элементов мас-
сива (c
1
,c
2
,…c
30
), полагая, что в массиве есть отрицательные значения.