ВУЗ:
Составители:
Рубрика:
49
условие выполняется, то происходит выход из цикла, иначе цикл
повторяется.
Пример 13 Вычисление факториала
Выше мы приводили пример вычисления факториала. Теперь эту
задачу решим с помощью оператора цикла с постусловием.
Программа 7
Var P: Longint;
I,n: Byte;
Begin P
:
=1; I
:
=1;
Writeln('Введите n'); readln(n);
Repeat P
:
=P*I; I
:
=I+1;
Until I>n;
Writeln('Значение ',n,'! факториала = ',P);
End.
Пример 14 Нахождение степени
Смотри условие примера №10. Теперь эта
задача реализована посредством оператора цикла с
постусловием.
Программа 8
Var X,Y,A,K: integer;
Begin K
:
=0; Y
:
=1;
Writeln(‘Введите число и степень’);
Read(A,X);
Repeat K
:
=K+1; Y
:
=Y*X
Until Y<A;
Writeln(K);
End.
K
=0; Y=1;
K=
K
+1
;
Y=Y*
X
Экран
"Ввод
A
,X
"
НАЧАЛО
да
нет
Y<A
Экран
K
КОНЕЦ
Р
исунок 37 Блок-схема
программы №8
50
B=(2N
2
+1)*C*H
НАЧАЛО
КОНЕЦ
S:=1; H:=1;
N:=0; C:=1;
Печать
Ввод X, E
|B| > E
нет
д
а
N:=N+1;
H=H*
x
2
(2N–1)2N
C:=
–
C;
S:=S+B;
Печать
Сумма ряда S
Число членов N
Пример 15 Вычисление суммы ряда
Смотри условие примера №11. Обратите внимание, что в
операторах цикла с предусловием и операторах цикла с постусловием
всегда необходимо определять начальные значения параметра цикла.
Программа 9
Var x,eps,S,H,B:real;
n,C:integer;
begin writeln(‘Введите переменную и точность
расчета ’);
readln(x,eps);
S
:
=1; H
:
=1 n
:
=0; C
:
=1;
repeat n
:
=n+1;
H
:
=H*SQR(x)/((2*n–1)*(2*n));
C
:
=–C;
B
:
= (2*SQR(n)+1)*C*H;
S
:
=S+B;
until ABS(B)
≤eps;
writeln(‘Сумма ряда = ’,S)
writeln(‘ число членов ряда n = ’,n)
end.
Рисунок 38 Блок-
схема программы №9
условие выполняется, то происходит выход из цикла, иначе цикл Пример 15 Вычисление суммы ряда повторяется. Пример 13 Вычисление факториала Смотри условие примера №11. Обратите внимание, что в операторах цикла с предусловием и операторах цикла с постусловием Выше мы приводили пример вычисления факториала. Теперь эту всегда необходимо определять начальные значения параметра цикла. задачу решим с помощью оператора цикла с постусловием. НАЧАЛО Программа 9 Программа 7 Var P: Longint; Печать Var x,eps,S,H,B:real; Ввод X, E I,n: Byte; n,C:integer; Begin P:=1; I:=1; S:=1; H:=1; begin writeln(Введите переменную и точность Writeln('Введите n'); readln(n); N:=0; C:=1; расчета ); Repeat P:=P*I; I:=I+1; readln(x,eps); Until I>n; N:=N+1; Writeln('Значение ',n,'! факториала = ',P); S:=1; H:=1 n:=0; C:=1; 2 x End. H=H* (2N1)2N repeat n:=n+1; НАЧАЛО Пример 14 Нахождение степени C:=C; H:=H*SQR(x)/((2*n1)*(2*n)); Экран Смотри условие примера №10. Теперь эта "Ввод A,X " задача реализована посредством оператора цикла с 2 C:=C; B=(2N +1)*C*H постусловием. B:= (2*SQR(n)+1)*C*H; K=0; Y=1; Программа 8 S:=S+B; S:=S+B; Var X,Y,A,K: integer; нет K=K+1; |B| > E Begin K:=0; Y:=1; until ABS(B)≤eps; Y=Y*X да Writeln(Введите число и степень); writeln(Сумма ряда = ,S) да Y
Страницы
- « первая
- ‹ предыдущая
- …
- 23
- 24
- 25
- 26
- 27
- …
- следующая ›
- последняя »