Читать книгу Языки программирования и нейросети. Решение задач - - Страница 8

6.Операторы цикла

Оглавление

Операторы цикла используются для вычислений, которые повторяются многократно. В Паскале имеется три вида циклов: цикл с предусловием while, цикл с постусловием repeat и цикл с параметром for.

6.1.Структурные схемы

Циклы с предусловием (на рис.1, левый) и с постусловием (рис.1, правый)


Рис.1.

Формат оператора с предусловием:


while выражение do оператор


Формат оператора с постусловием:


repeat тело цикла until выражение


6.2.Примеры

Программа печати таблицы значений функции sin для аргумента, изменяющегося в заданных пределах с заданным шагом.

program tabl_fun;

var

Xn, Xk: real; {начальное и конечное значения аргумента}

dX: real; {шаг изменения аргумента}

x, y: real; {текущие значения аргумента и функции}


begin

writeln («Введите Xn, Xk, dX»);

readln (Xn, Xk, dX);

writeln (» – — – — – — – — – — – —»); {заголовок таблицы}

writeln (»│ X │ Y │»);

writeln (» – — – — – — – — – — – —»);

x:= Xn; {первое значение аргумента}

while x <= Xk do {заголовок цикла}

begin

y:= sin (x); {вычисление значения функции}

writeln (»│», x:9:2, ‘ │», y:9:2, ‘ │»); {вывод строки таблицы}

x:= x+dX; {переход к следующему значению аргумента}

end;

writeln (» – — – — – — – — – — – —»);

readln;

end.


Программа, вычисляющая квадратный корень вещественного аргумента Х с заданной точностью eps по итерационной формуле:

уn = (yn-1 + x/yn-1) /2,

где yn-1 – предыдущее приближение к корню (в начале вычислений выбирается произвольно), у– последующее приближение. Процесс вычислений прекращается, когда приближения станут отличаться друг от друга по абсолютной величине менее, чем на величину заданной точности.

program square_root;

var

X, eps, {аргумент и точность}

Yp, Y: real; {предыдущее и последующее приближение}

begin

repeat

writeln («Введите X, eps’);

readln (X, eps);

until (X> 0) and (eps> 0);


Y:= 1;

repeat

Yp:= Y;

Y:= (Yp + X / Yp) / 2;

until abs (Y – Yp) <eps;

writeln («Корень из», Х:6:3, «с точностью», eps:7:5, «равен», Y:9:5);

readln;

end.

6.3.Цикл с параметром for


Параметром цикла называется переменная, которая используется при проверке условия продолжения цикла и принудительно изменяется на одну и ту же величину на каждой итерации. Если параметр цикла целочисленный, то он называется счётчиком цикла.

В циклах for языка Паскаль используется счётчик, который автоматически либо увеличивается, либо уменьшается на единицу.

Соответственно, могут быть две формы записи этого цикла:


for параметр:= выражение_1 to выражение_2 do оператор

for параметр:= выражение_2 downto выражение_1 do оператор


6.3.1.Структурная схема


Рис.2.

6.3.2.Примеры.


1. Вывести на экран в столбик числа от 1 до 10.

program digit;

var i: integer;

begin

for i:= 1 to 10 do writeln (i)


end.

2. Вывести на экран в столбик числа от 10 до 1 и подсчитать их сумму.

program digit;

var i, sum: integer;

begin

sum:= 0;

for i:= 10 downto 1 do

begin

writeln (i);

inc (sum, i) {инкремент – inc (х) —увеличивает х на 1, inc (х, 3) – на 3}

end;

writeln («Сумма чисел:», sum);

readln;

end.


Языки программирования и нейросети. Решение задач

Подняться наверх