Циклы Pascal

Содержание

Слайд 2

Цикл – это повторяющаяся последовательность операторов.
Циклы бывают арифметические и итерационные
Арифметический цикл –

Цикл – это повторяющаяся последовательность операторов. Циклы бывают арифметические и итерационные Арифметический
это такой цикл, число повторений которого известно заранее. В Pascal такой цикл обычно реализуется с помощью оператора for.
Итерационный цикл – это такой цикл, число повторений которого заранее неизвестно и выход из цикла производится в случае выполнения или невыполнения какого-то условия. В Pascal такие циклы обычно реализуются с помощью операторов while и repeat

Слайд 3

Цикл for

Цикл for

Слайд 4

Цикл for

Принцип работы: Сначала счетчику цикла присваивается начальное значение. Если это значение

Цикл for Принцип работы: Сначала счетчику цикла присваивается начальное значение. Если это
не больше конечного значения, то выполняется тело цикла. Затем значение счетчика увеличивается на 1 и опять сравнивается с конечным значением. Если оно по-прежнему не больше конечного значения, то оператор выполняется еще раз и так далее.
Замечание: если тело цикла состоит из одного оператора, то begin и end можно опустить

Слайд 5

Принцип работы: как и в первом случае, пока начальное значение не меньше

Принцип работы: как и в первом случае, пока начальное значение не меньше
конечного значения, то выполняется тело цикла. Затем значение счетчика уменьшается на 1

Слайд 6

Задачи:

1) Написать программу, которая выводит на экран все натуральные числа от 1

Задачи: 1) Написать программу, которая выводит на экран все натуральные числа от
до n
2) Написать программу, которая подсчитывает сумму натуральных чисел от 1 до n
3) Написать программу, которая считает xn
для вещественного x и натурального n
4) Написать программу, которая выводит на экран: 20 40 80 160 320
5) Написать программу, которая подсчитывает произведение натуральных чисел от 1 до n

Решение

Слайд 8

Решение задач ОГЭ

Дан фрагмент программы. Чему будет равна переменная s в результате

Решение задач ОГЭ Дан фрагмент программы. Чему будет равна переменная s в
работы данной программы?

Решение:
В этой задаче есть цикл for. Тело цикла будет выполняться 4 раза (при n=2,3,4,5).
s=2
n=2 s=2+2*2=6
n=3 s=6+3*2=12
n=4 s=12+4*2=20
n=5 s=20+5*2=30
Программа выводит значение переменной s, значит на экране будет число 30
Ответ: 30

Слайд 9

Задачи Даны фрагменты программы. Что будет напечатано на экране в результате работы данных

Задачи Даны фрагменты программы. Что будет напечатано на экране в результате работы данных программ?
программ?

Слайд 10

Цикл While (цикл с предусловием)

Цикл While (цикл с предусловием)

Слайд 11

Общий вид цикла while

Цикл while организует выполнение тела цикла неизвестное заранее число

Общий вид цикла while Цикл while организует выполнение тела цикла неизвестное заранее
раз. Выход осуществляется, если условие окажется ложным.
Принцип работы: перед каждым выполнением цикла анализируется условие: если оно истинно, выполняется тело цикла и управление передается на повторную проверку условия. Если условие ложно – цикл завершается и управление передается на оператор, следующий за циклом while.

Слайд 12

Замечания:

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

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

Слайд 13

Задача: написать программу, которая выводит на экран все натуральные числа от 1

Задача: написать программу, которая выводит на экран все натуральные числа от 1
до n

Пока истинно условие
i<=n, будет выполняться
тело цикла: 1) вывод числа i 2) увеличиваем на единицу значение i

Слайд 14

Задача: написать программу, которая выводит на экран все натуральные числа от 1

Задача: написать программу, которая выводит на экран все натуральные числа от 1
до n Решение: умеем составлять алгоритм с циклом for

Программа с циклом for
Program m1;
var i,n:integer;
begin
writeln('Введите n');
readln(n);
for i:=1 to n do
write(i,' ');
end.

Программа с циклом while
Program m2;
var i,n:integer;
begin
writeln('Введите n');
readln(n);
i:=1;
while i<=n do
begin
write(i,' '); i:=i+1;
end;
end.

Слайд 15

Определите, что будет напечатано в результате работы следующего фрагмента программы:

var k, s:

Определите, что будет напечатано в результате работы следующего фрагмента программы: var k,
integer;
begin
s:=0;
k:=1;
while s < 66 do
begin
k:=k+3;
s:=s+k;
end;
write(k);
end.

var k, s: integer;
begin
s:=0;
k:=0;
while k < 30 do
begin
k:=k+3;
s:=s+k;
end;
write(s);
end.

var k, s: integer;
begin
s:=1;
k:=0;
while k < 13 do
begin
s:=s+2*k;
k:=k+4;
end;
write(s+k);
end.

Слайд 16

Определите, что будет напечатано в результате работы следующего фрагмента программы:

var n, s:

Определите, что будет напечатано в результате работы следующего фрагмента программы: var n,
integer;
begin
n := 4;
s := 0;
while n <= 8 do
begin
s := s + n;
n := n + 1
end;
write(s)
end.

var k, s: integer;
begin
s:=0;
k:=0;
while s < 100 do
begin
s:=s+k;
k:=k+4;
end;
write(k);
end.

var k, s: integer;
begin
s:=5;
k:=0;
while k < 15 do
begin
k:=k+2;
s:=s+k;
end;
write(s);
end.

Слайд 17

Задачи:

1) Напечатать целые числа -10, -5, 0, 5…20
2) Найти произведение чисел

Задачи: 1) Напечатать целые числа -10, -5, 0, 5…20 2) Найти произведение
из диапазона от A до B (A<=B) с шагом h
Вход: 1 15 5 Вход: 10 100 30
Выход: 66 Выход: 2800000
3) Для заданного натурального n и действительного x подсчитать сумму
Вход: 3 Вход: 2
Выход: 14 Выход: 5
4) Напечатать таблицу перевода расстояний в дюймах в сантиметры для значений 10, 11, 12,…20 дюймов (1 дюйм=2,54 см)
Выход:
10 дюймов=25,4 см
11 дюймов=27,94 см

20 дюймов=50,8 см

Решение

Слайд 18

Задачи:

5) Напечатать все целые значения от A до B с шагом h.

Задачи: 5) Напечатать все целые значения от A до B с шагом
Вход: 1 10 2 Вход: 5 20 5
Выход: 1 3 5 7 9 Выход: 5 10 15 20
6) Найти сумму чисел из диапазона от A до B с шагом 3.
Вход: 1 15 Вход: 0 10
Выход: 35 Выход: 18
7) Для заданного натурального n и действительного x подсчитать сумму
Вход: 3 Вход: 5
Выход: 1.83 Выход: 2.28
8) Напечатать таблицу соответствия между весом в фунтах и весом в килограммах для значений 5,10,15…50 фунтов (1 фунт=0,453 кг)
Выход:
5 фунтов=2,265 кг
10 фунтов=4,53 кг

50 фунтов=22,65 кг

Решение

Слайд 21

Цикл repeat (цикл с постусловием)

Цикл repeat (цикл с постусловием)

Слайд 22

Общий вид цикла

Принцип работы: выполняется тело цикла. Если <условие> истинно, то выполнение

Общий вид цикла Принцип работы: выполняется тело цикла. Если истинно, то выполнение
цикла завершится. Если <условие> ложно, то снова выполняется тело цикла

Слайд 23

Замечания:

т. к. условие завершения цикла проверяется в конце цикла, то операторы тела

Замечания: т. к. условие завершения цикла проверяется в конце цикла, то операторы
цикла выполнятся хотя бы один раз
В цикле repeat, так же как и в операторе while возможна ситуация зацикливания в случае, если <условие> всегда будет оставаться ложным

Слайд 24

Задача: написать программу, которая выводит на экран все натуральные числа от 1

Задача: написать программу, которая выводит на экран все натуральные числа от 1
до n

Программа с циклом while
Program m2;
var i,n:integer;
begin
writeln('Введите n'); readln(n);
i:=1;
while i<=n do
begin
write(i,' '); i:=i+1;
end;
end.

Программа с циклом repeat
Program m3;
var i,n:integer;
begin
writeln('Введите n'); readln(n);
i:=1;
repeat
write(i,' ');
i:=i+1;
until i>n
end.

Слайд 25

Задачи:

1) Напечатать все целые значения от A до B с шагом h.

Задачи: 1) Напечатать все целые значения от A до B с шагом
Вход: 1 10 2 Вход: 5 20 5
Выход: 1 3 5 7 9 Выход: 5 10 15 20
2) Для заданного натурального n и действительного x подсчитать
сумму
Вход: 3 Вход: 2
Выход: 14 Выход: 5
3) Для заданного натурального n и действительного x подсчитать
сумму
Вход: 3 Вход: 5
Выход: 1.83 Выход: 2.28

Решение