Примеры использования различных операторов цикла. Вложенный цикл.
Вычислить
Вычисления остановить при выполнении условия
Для решения этой задачи удобно использовать оператор цикла с предусловием WHILE ...DO.
PROGRAM PR22;
VAR
У, Е: REAL;
I: INTEGER;
BEGIN
WRITELN('ВВЕДИТЕ E');
READLN(E);
I:= 1; Y:=0.5;
WHILE I * EXP(-I * LN(2)) > E
DO BEGIN
Y:=Y + I*EXP(-I*LN(2));
I:= I+ 1;
END;
WRITELN('Y =', Y:12:8)
END.
Пример №23. Вычислить с точностью ? квадратный корень из величины
Вычисление проводить по рекуррентной формуле:
выбрав в качестве начального приближения величину
При решении подобных задач условие остановки вычислительного процесса формулируется следующим образом: | Yi — Yi-1 |<?.
Вводим с клавиатуры величины X и Е. Далее вычисляем первое приближение Y. Если X<1, то Y принимается равным X, в противном случае за Y принимается величина Х/2. Далее на основании Y нужно найти следующее приближение. Поэтому вычисленное значение записывается в ячейку с именем Y1 и с этого момента времени считается предыдущим значением. Текущее значение Y рассчитывается по рекуррентной формуле на основании Y1 и X. Этот циклический процесс повторяется до тех пор, пока не выполнится условие | Y — Y1 | < Е. После чего Y считается равным значению корня из X с точностью Е и выводится на экран монитора.
PROGRAM PR23;
VAR
X, Y, YI, E: REAL;
BEGIN
WRITELN('BBEДИTE X, E');
READLN(X, E);
Y:= X;
IF X>= 1 THEN Y:= Y/2;
REPEAT
Y1:=Y;
Y:= (Y1 +X/Y1)/2
UNTIL ABS(Y-Y1)<E;
WRITELN(Y =', Y:12:8)
END.
Чтобы проверить доступность компьютера по сети, необходимо выполнить пинг, чтобы узнать время отклика компьютера по сети при его доступности. Чем меньше время ожидания, тем лучше скокрость интернет соедниения.
Предыдущая статья: Вложенный арифметический цикл.
Оглавление: Лекции по Pascal.
Следующая статья: Вычисление предела последовательности.