Циклические алгоритмы. Цикл с постусловием. Инструкции управления циклом

Содержание

Слайд 2

Циклические алгоритмы Циклические алгоритмы — это алгоритмы, содержащие циклы. Цикл —

Циклические алгоритмы

Циклические алгоритмы —
это алгоритмы, содержащие циклы.

Цикл —
это алгоритмическая конструкция,
которая

представляет собой
последовательность действий,
повторяющихся многократно.
Слайд 3

Виды циклов Циклы С заданным условием продолжения работы (с предусловием) С

Виды циклов

Циклы

С заданным условием продолжения работы
(с предусловием)

С параметром

С заданным условием окончания

работы
(с постусловием)
Слайд 4

Виды циклов Циклы С заданным условием продолжения работы (с предусловием) С

Виды циклов

Циклы

С заданным условием продолжения работы
(с предусловием)

С параметром

С заданным условием окончания

работы
(с постусловием)

Условие цикла

Тело цикла

Да

Нет

Блок-схема цикла с предусловием:

Слайд 5

Вопросы к изучению Цикл с постусловием. 1 Инструкции управления циклом. 2

Вопросы к изучению

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

1

Инструкции управления циклом.

2

Слайд 6

Алгоритм мытья посуды Начало Конец Взять губку Вытереть руки Открыть кран

Алгоритм мытья посуды

Начало

Конец

Взять губку

Вытереть руки

Открыть кран

Вымыть тарелку

Вытереть тарелку

Грязных тарелок больше нет

Положить

губку

Закрыть кран

Да

Нет

Слайд 7

Условие цикла Тело цикла Да Нет Цикл с постусловием: работает до

Условие цикла

Тело цикла

Да

Нет

Цикл с постусловием:
работает до тех пор, пока не
выполнится

его условие;
в любом случае выполняется в
программе хотя бы один раз.
Слайд 8

Инструкции управления циклом break останавливает исполнение текущего цикла и переходит к исполнению команд, следующих после него.

Инструкции управления циклом

break
останавливает исполнение
текущего цикла и переходит
к исполнению команд,


следующих после него.
Слайд 9

Запись цикла с постусловием В языке Python нет отдельной инструкции для

Запись цикла
с постусловием

В языке Python нет отдельной инструкции
для записи цикла

с постусловием, поэтому
он реализуется через бесконечный цикл с
предусловием:

while True:
<инструкция 1>
<инструкция 2>

<инструкция n>
if <условие цикла>:
break

Слайд 10

Задача Написать программу, которая вычисляет наибольший общий делитель двух целых положительных

Задача

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

Наибольший

общий делитель (НОД) —
это наибольшее число, на которое без остатка делятся оба числа.

Эвклид
(3 век до н.э.)

Усовершенствованный
алгоритм Эвклида
Наибольшее число заменяется своим остатком от
деления на наименьшее число до тех пор, пока одно из
чисел не станет равным нулю.
После этого ненулевое число — это наибольший общий
делитель исходных чисел.

Слайд 11

Цикл с блоком «else»: while : … else: … Выполняется, если

Цикл с блоком «else»:

while <условие>:
<инструкция 1>
<инструкция 2>

<инструкция

n>
else:
<инструкция n + 1>
<инструкция n + 2>

<инструкция m>

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

Слайд 12

Инструкции управления циклом break останавливает исполнение текущего цикла и переходит к

Инструкции управления циклом

break
останавливает исполнение текущего цикла и переходит к исполнению команд,

следующих после него.

continue
останавливает текущее
исполнение тела цикла и
переходит к следующему,
начиная с проверки условия.

Слайд 13

Задача Написать программу, генерирующую случайное целое число на промежутке [a; b],

Задача

Написать программу, генерирующую случайное целое число на промежутке [a; b],
предоставляющую

пользователю неограниченное число попыток для того, чтобы его
угадать. Если пользователю надоело угадывать, то он должен ввести слово «Сдаюсь».
a < b
Слайд 14

Принцип работы цикла while s != str (n): s = input

Принцип работы
цикла

while s != str (n):
s = input ()
if

s == 'Сдаюсь':
break
elif s == str (n):
continue
print ('Вы не угадали. Попробуйте ещё раз.')
else:
print ('Поздравляем! Вы угадали.')
...
Слайд 15

Понятность кода ??? Инструкции управления циклом следует использовать аккуратно, так как они могут затруднять читаемость кода.

Понятность кода

???

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

читаемость кода.
Слайд 16

Циклические алгоритмы. Цикл с постусловием. Инструкции управления циклом Инструкции управления циклом:

Циклические алгоритмы.
Цикл с постусловием.
Инструкции управления циклом

Инструкции управления циклом:
завершение работы
цикла –

break;
прерывание текущего
исполнения цикла –
continue.

Блок «else» в цикле
выполняется, если исполнение цикла
было завершено без помощи инструкции
завершения работы цикла.