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

UptoLike

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

13
3.3. Вычислить значения членов бесконечного ряда
.!/,...
!
,...,
!3
,
!2
,
32
ε
nxчленадо
n
xxx
x
n
n
Здесь имеет место итерационный цикл, так как заранее не известно, при
каком n выполняется условие x
n
/n!
≤ε
. Для итерационных циклов число повто-
рений зависит от некоторого промежуточного или окончательного результата, а
не от параметра цикла.
Сравнивая два соседних члена ряда, видим, что y
n
/y
n-1
=x/n. Поэтому для
уменьшения времени счета, при вычислении текущего члена ряда целесообраз-
но использовать в цикле рекуррентную формулу y
n
=y
n-1
x/n. Чтобы использовать
эту формулу для вычисления значения первого члена ряда y
1
=y
0
(x/1), необхо-
димо, заданное начальное значение y
0
приравнять 1. Параметром, изменяющим-
ся в этом цикле, будет номер n члена ряда. Тогда формула для вычисления зна-
чения текущего члена ряда будет иметь вид y=yx/n.
Схема алгоритма такого вычислительного процесса приведена на рис.6.
Если использовать для организации цикла блок начала цикла, то в нем надо
указать в качестве последнего значения параметра цикла некоторое большое
число, заведомо большее того n, при котором выполняется условие y
≤ε
.
Оператор цикла с предпроверкой условия
WHILE <условие>DO<оператор>
Указанный оператор выполняется повторно до тех пор, пока условие ис-
тинно. Действие его таково: если при выполнении этого цикла условие ложно
сразу же, то оператор, стоящий после DO , не выполняется ни разу.
Оператор цикла с постпроверкой условия
REPEAT<группа операторов>UNTIL<условие>
В этом операторе, в отличие от оператора цикла с предусловием, условие
проверяется после выполнения тела цикла. При этом тело цикла выполняется
хотя бы один раз и до тех пор, пока условие ложно.
Если в цикле WHILE выполняется несколько операторов, то они объеди-
няются в один составной и заключаются в операторные скобки BEGIN и END, а
в цикле REPEAT это не делается.
3.4. Вычислить значение функции
1||
14
3
+
+
=
x
xx
y
, пользуясь оператором
цикла WHILE, при
x
, изменяющемся в диапазоне
КОННАЧ
xxx
с шагом x
.
Представим решение этой задачи в виде блок-схемы (рис.7).