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

Содержание

Слайд 2

1. Запишите конструкцию цикла с предусловием.
В каких случаях применяется цикл с

1. Запишите конструкцию цикла с предусловием. В каких случаях применяется цикл с предусловием?
предусловием?

Слайд 3

2. Запишите правильную структуру последовательности операторов.
а:=2; b:=l; while a+b<8 do begin a:=a+l;

2. Запишите правильную структуру последовательности операторов. а:=2; b:=l; while a+b Сколько раз
b:=b+l end; s:=a+b.
Сколько раз будет повторен цикл и какими будут значения переменных a, b, s после его завершения?

Слайд 4

3. Запишите правильную структуру последовательности операторов. Какими будут значения переменных а и

3. Запишите правильную структуру последовательности операторов. Какими будут значения переменных а и
b после выполнения операторов?
а:=1; b:=l; while а<=8 do а:=а+1; b:=b+l.

Слайд 5

4. Дана последовательность операторов, вычисляющих факториал f числа я, которая содержит пять

4. Дана последовательность операторов, вычисляющих факториал f числа я, которая содержит пять
ошибок. Найдите эти ошибки, предварительно записав операторы в правильном виде.
k:=l;f:=0;
while kk:=k+l,
Примечание. Факториалом натурального числа называется произведение всех натуральных чисел от 1 до этого числа, т. е. n!=1*2*3*...*(n—2)*(n—1)*n.

Слайд 6

5. Найдите и исправьте ошибки в следующем фрагменте программы, определяющей для заданного

5. Найдите и исправьте ошибки в следующем фрагменте программы, определяющей для заданного
натурального числа n число, записанное цифрами числа n в обратном порядке.
р:=n;
while р>=0 do begin
а:=а+р mod 10;
р:=р div 10
end;

Слайд 7

Ответы:

while <логическое выражение> do begin группа операторов end;
Когда до выполнения цикла

Ответы: while do begin группа операторов end; Когда до выполнения цикла количество повторов неиз­вестно.
количество повторов неиз­вестно.

Слайд 8

2.
а:=2;
b:=1;
while a+b<8 do
begin
a:=a+l;
b:=b+l
end;
s:=a+b.
2 раза;
a = 5,

2. а:=2; b:=1; while a+b begin a:=a+l; b:=b+l end; s:=a+b. 2 раза;
b = 3, s = 8.

Слайд 9

3. a:=2; b:=3;
while a<=7 do
а:=а+1;
b:=b+l;
а = 8, b = 4.
4.

3. a:=2; b:=3; while a а:=а+1; b:=b+l; а = 8, b =
k:=1; f:=l;
while k<=n do f=f*k;
k:=k+l;
end;

Слайд 10

5. read(n);
p:=n; a:=0;
while p>=0 do
begin
a:=a*10+p mod 10;
p:=p div 10
end;

5. read(n); p:=n; a:=0; while p>=0 do begin a:=a*10+p mod 10; p:=p div 10 end;

Слайд 11

Вы уже умеете организовать цикл при помощи оператора while.
Напомним, что при

Вы уже умеете организовать цикл при помощи оператора while. Напомним, что при
выполнении этого оператора компьютер вычисляет значение условия.

Слайд 12

Если условие истинно, то исполнительная часть оператора while будет выполняться до тех

Если условие истинно, то исполнительная часть оператора while будет выполняться до тех
пор, пока это условие не примет значение false.
Если значение условия есть false в самом начале, то исполнительная часть оператора while вообще не будет выполняться.

Слайд 13

Иногда при решении задач возникает необходимость выполнить тело цикла хотя бы один

Иногда при решении задач возникает необходимость выполнить тело цикла хотя бы один
раз, а потом исследовать условие, повторять ли его еще раз. Эту задачу выполнит другой вид цикла Repeat.

Слайд 14

repeat повторяй операторы
until <условие>; до тех пор, пока условие не будет верным
Есть

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

Слайд 15

Конструкция repeat... until работает аналогично циклу while. Различие заключается в том, что

Конструкция repeat... until работает аналогично циклу while. Различие заключается в том, что
цикл while проверяет условие до выполнения действий, в то время как repeat проверяет условие после выполнения действий, это гарантирует хотя бы одно выполнение действий до завершения цикла.

Слайд 16

Например:

repeat
read (Number);
Sum:=Sum+Number;
until Number=- 1
repeat
i:= i+1;
writeln (Sqr(i))
until Number=-1

Например: repeat read (Number); Sum:=Sum+Number; until Number=- 1 repeat i:= i+1; writeln (Sqr(i)) until Number=-1

Слайд 17

Практическая работа

Практическая работа

Слайд 18

Задание 1.

Определите, является ли данное число простым. Примечание. Простым называется число,

Задание 1. Определите, является ли данное число простым. Примечание. Простым называется число,
которое не имеет делителей, кроме 1 и самого себя.

Слайд 19

Решение:

Var i, Number : integer; {возможный делитель и исследуемое число}
Begin
writeln ('Какое

Решение: Var i, Number : integer; {возможный делитель и исследуемое число} Begin
число должно быть проверено?');
read (Number);
i:=l;
repeat
i:=i+l;
until Number mod i=0;
if Number=i then writeln(Number,'является простым')
else writeln(Number,'делится на',i);
End.

Слайд 20

Задание 2. Выведите на экран строку из звездочек

Решение:
Var i, n: integer;
begin
write('Количество знаков:');

Задание 2. Выведите на экран строку из звездочек Решение: Var i, n:
readln(n);
i:=l;
repeat
write(' (*)');
i:=i+l
until i>n;
end.

Слайд 21

Задание 3. Выведите квадраты натуральных чисел, не превосходящих 50.

Решение:
var х, n:

Задание 3. Выведите квадраты натуральных чисел, не превосходящих 50. Решение: var х,
integer;
begin
write('Enter n:'); readln(n);
x:=l;
repeat
у:=х*х;
if yx:=x+1;
until y>n;
end.

Слайд 22

Задание 4. Найдите НОД двух чисел

Решение:
Var х, у: integer;
Begin
Writeln ('Введите два числа');

Задание 4. Найдите НОД двух чисел Решение: Var х, у: integer; Begin
readln(x, у);
Repeat
If х>у then х:=х mod у else у:=у mod х;
Until (х=0) Or (у=0);
Writeln ('НОД=',х+у));
End.

Слайд 23

Вывод

Как программируется цикл с постусловием на языке Паскаль?
Для каких целей лучше

Вывод Как программируется цикл с постусловием на языке Паскаль? Для каких целей лучше его использовать?
его использовать?

Слайд 24

Домашнее задание

Составить программу нахождения НОД трех чисел. НОД(а,b,с)=НОД(НОД(а,b,с).
Составить программу нахождения НОК двух

Домашнее задание Составить программу нахождения НОД трех чисел. НОД(а,b,с)=НОД(НОД(а,b,с). Составить программу нахождения
чисел, используя формулу А х B = НОД (A, В) х НОД (A, В).

Слайд 25

program dz1;
Var А, В, С, nod: integer;
Begin
Readln(A,B,C);
Repeat
If A>B then A:=A

program dz1; Var А, В, С, nod: integer; Begin Readln(A,B,C); Repeat If
mod B else B:=B mod A;
Until (A=0) or (B=0);
Writeln('HOД=’ ,A+B);
nod:=A+B;
Repeat
If nod>C then nod:=nod mod С else C:=C mod nod;
Until (nod=0) or (C=0);
Writeln ('НОД=’,nod+C);
End.
Имя файла: Цикл-с-предусловием.pptx
Количество просмотров: 231
Количество скачиваний: 1