Повторение действий в turbo pascal. Циклы

Содержание

Слайд 2

Типы циклов

цикл с предусловием
цикл с постусловием
цикл с параметром

Типы циклов цикл с предусловием цикл с постусловием цикл с параметром

Слайд 3

Основные понятия

Тело цикла –
повторяющиеся действия
Итерация –
один проход цикла
Начальные установки –

Основные понятия Тело цикла – повторяющиеся действия Итерация – один проход цикла

определение значений переменных, которые используются в циклах с предусловием и с постусловием

Слайд 4

Цикл с предусловием

while <условие> do <тело цикла>;
Условие – простое или составное логическое

Цикл с предусловием while do ; Условие – простое или составное логическое выражение Формат:
выражение

Формат:

Слайд 5

Примеры

a : = 3; while a < 4 do a: = sqr(a);
a

Примеры a : = 3; while a a : = 10; while
: = 10; while true do a : = a*10;
a : = 10; while false do a : = a*10;

Слайд 6

Задача

Преобразовать значение угла в градусах к стандартному диапазону ±1800 путем исключения полных

Задача Преобразовать значение угла в градусах к стандартному диапазону ±1800 путем исключения полных оборотов окружности (±3600).
оборотов окружности (±3600).

Слайд 7

Решение

var a : integer;
begin
readln(a);
while abs(a) > 180 do
if a >

Решение var a : integer; begin readln(a); while abs(a) > 180 do
0 then dec(a,360)
else inc(a,360);
writeln(a);
end.

Слайд 8

Для n>=0, не применяя формулы, вычислить сумму чисел от 1 до n

i:=0;

S:=0;

Readln(n);

While

x

Begin

i:=i+1;

s:=s+i;

End;

do

Для n>=0, не применяя формулы, вычислить сумму чисел от 1 до n

Слайд 9

C клавиатуры вводятся натуральные числа. Последовательность этих чисел заканчивается нулем. Найти их

C клавиатуры вводятся натуральные числа. Последовательность этих чисел заканчивается нулем. Найти их
сумму.

Readln(a);

S:=0;

While

a<>0

do

Begin

S:=s+a;

End;

Слайд 10

Цикл с постусловием

repeat
<тело цикла>
Until <условие>;

Формат:

Цикл с постусловием repeat Until ; Формат:

Слайд 11

Примеры

x : = 4;
repeat writeln (x);
until true;
x : = 4;

Примеры x : = 4; repeat writeln (x); until true; x :

repeat writeln (x);
until false;

Слайд 12

Задача

Найти методом подбора целочисленное решение Диофантова уравнения 5х-3у=1.

Задача Найти методом подбора целочисленное решение Диофантова уравнения 5х-3у=1.

Слайд 13

Решение

var x, y : integer;
begin
x : = 1; y : = 1;
repeat
if

Решение var x, y : integer; begin x : = 1; y
5*x – 3*y >1 then inc(y)
else inc(x);
until 5*x – 3*y =1;
writeln (x:5, y:5);
end.

Слайд 14

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

Этот оператор применяется, если требуется выполнить тело цикла заранее заданное

Цикл с параметром Этот оператор применяется, если требуется выполнить тело цикла заранее
количество раз.
Параметр - переменная порядкового типа - на каждой итерации увеличивается или уменьшается на одно значение.

Слайд 15

Формат оператора

for <параметр> : = <выражение 1>
to <выражение 2>

Формат оператора for : = to do ; S:=0; for i:=1 to 20 do s:=s+i;
do
<тело цикла>;
S:=0;
for i:=1 to 20 do
s:=s+i;

Слайд 17

for i:=1 to 20 do
s:=s+i;

for i:=1 to 20 do s:=s+i;

Слайд 18

Формат оператора

for <параметр> : = <выражение 1> downto <выражение 2> do

Формат оператора for : = downto do ; S:=0; for i:=20 downto 1 do s:=s+i;

<тело цикла>;
S:=0;
for i:=20 downto 1 do
s:=s+i;

Слайд 19

for i:=20 downto 1 do s:=s+i;

for i:=20 downto 1 do s:=s+i;

Слайд 20

Задача

Найти нечетные и кратные 3 числа в диапазоне от 30 до 60.

Задача Найти нечетные и кратные 3 числа в диапазоне от 30 до
Распечатать их в порядке убывания.

Слайд 21

Решение

var i : byte;
begin
for i := 60 downto 30 do
if ( i

Решение var i : byte; begin for i := 60 downto 30
mod 3 =0) and ( odd i )
then writeln ( i );
end.

Слайд 22

Замечания

Если тело цикла содержит несколько действий, то эти действия заключаются в операторные

Замечания Если тело цикла содержит несколько действий, то эти действия заключаются в
скобки begin … end.
В теле цикла запрещается явное преобразование счетчика.
После нормального завершения цикла значение счетчика не определено.

Слайд 23

Замечания

Для аварийного выхода из циклов или внеочередного перехода к следующей итерации существуют

Замечания Для аварийного выхода из циклов или внеочередного перехода к следующей итерации
две процедуры модуля SYSTEM: BREAK - прекращает выполнение тела цикла и переходит к оператору, следующему за циклом; CONTINUE – передает управление на условие продолжения или завершения тела цикла, так что начинается следующая итерация.
Имя файла: Повторение-действий-в-turbo-pascal.-Циклы.pptx
Количество просмотров: 465
Количество скачиваний: 0