132.04K
Category: programmingprogramming

Лекция 3

1.

Лекция №3
Разветвленная структура
алгоритма. Условный оператор.
Множественное ветвление.
Условия равенство/неравенство

2.

Алгоритм – это строго определенная
последовательность действий при решении
задачи. Алгоритм содержит несколько шагов.
Шаг алгоритма – это каждое отдельное
действие алгоритма.
Алгоритмизация:
1) этап решения задачи, состоящий в
нахождении по формулировке задачи алгоритма
ее решения.
2) раздел информатики, изучающий методы,
приемы построения алгоритмов и их свойства
(иногда также называемый алгоритмикой).

3.

Результативность – получение
Результативность
результата
за конечное количество
шагов
АЛГОРИТМ
Массовость – использование
алгоритма для
решения
Массовость
однотипных задач
Свойства алгоритма
Дискретность (прерывность,
раздельность) – разбиение алгоритма
на шаги
Детерминированность
(определенность, точность) – каждое
действие должно строго и
недвусмысленно определено
Конечность – каждое действие в
отдельности и алгоритм в целом
должны иметь возможность
завершения
Понятность – указания, которые понятны
исполнителю

4.

•Словесные
•Табличные
•Графические (блок-схемы)
•Программные

5.

Представление алгоритмов в виде блок-схем
• Наиболее наглядным способом представления алгоритма
является его графическое представление в виде блок-схем.
Блок-схема - это графическое представление алгоритма,
каждое действие алгоритма записывается соответствующей
геометрической фигурой.
• Алгоритм при этом изображается в виде последовательности
блоков,
внутри
которых
помещается
информация,
поясняющая выполняемые ими действия.
• Линии на блоках выполняют функции связи между блоками.
Направления линий связи могут не обозначаться стрелками,
если они направлены сверху вниз или слева направо.

6.

Таблица основных условных обозначений в блок-схемах
Условное
обозначение
Назначение блока
Начало или конец алгоритма
Ввод или вывод данных.
Внутри блока перечисляются данные
через запятую.
Процесс.
Внутри блока записываются
математические формулы и операции
для обработки данных.
Проверка условия.
Внутри блока записываются
логические условия. Имеет два выхода
Да(+) и Нет(-).
Направление.

7.

•Линейный (следование)
•Разветвленный (ветвление, выбор,
альтернатива)
•Циклический (повтор)
•Вспомогательный
•Комбинированный

8.

Линейный алгоритм – это алгоритм,
шаги
которого
выполняются
последовательно друг за другом.

9.

Начало
Серия команд 1
Серия команд 2
Серия команд N
Конец

10.

Разветвляющийся алгоритм (Множественное
ветвление)

это алгоритм, в котором в зависимости от
условия выполняется либо одна, либо другая
последовательность действий.

11.

Базовая структура ветвления
Неполная
форма
Полная
форма
Да
Инструкция 1
Нет
Условие
Инструкция 2
Да
Инструкция
Нет
Условие

12.

Условный оператор if

13.

Ветвление
• Ветвление – выполнение одного из возможных
действий
(или
ряда
действий),
выбор
которого
определяется истинностью заданного условия или
значением заданного выражения.
• В Python условным оператором является оператор if (в
переводе с английского означает «если»).

14.

Все составные операторы в языке Python оформляются
одинаково: строка с заголовком
завершается двоеточием, далее следуют вложенные операторы
(один или более), обычно с
отступом относительно заголовка. Эти операции с отступами
называются блоком (или иногда
набором).
Условный оператор может содержать другие операторы,
например операторы and (конъюнкция), or (дизъюнкция), not —
отрицание, равенство ==, неравенство !=. Также в Python можно
записывать двойное условие, например 2<=a<=5, -10<v<=9. В
том числе условный оператор может содержать внутри себя
другой условный оператор.

15.

Инструкция if
• Инструкция if в простейшей своей форме организует
выполнение
действия
по
некоторого условия:
if Условие :
Действие
• Пример:
if 5 > 2 :
print("Выражение верно")
результатам
проверки

16.

Инструкция if - else
•В
случае,
если
условие
не
выполняется,
может
быть
выполнено
альтернативное действие, указываемое после ключевого слова else (в
переводе с английского – «иначе») :
if Условие :
Действие1
else :
Действие2
• Пример:
if 5 > 2 :
print("Выражение верно")
else :
print("Выражение неверно")

17.

Инструкция if - else
• Следует заметить, что влияние на работу программы оказывают
отступы, выставляемые перед строками кода. Чтобы установить
отступ, следует перед строкой кода поставить символ табуляции
(клавиша Tab). По результатам проверки условия может быть
выполнено как одно действие, так и несколько.
if Условие :
Действие11
Действие12

Действие1N
else :
Действие21
Действие22

Действие2N

18.

Инструкция if - else
• Пример выполнения блока действий в каждой из веток ветвления:
if 5 > 2 :
print("Выражение верно")
print("Пять больше двух")
else :
print("Выражение неверно")
print("Пять не больше двух")

19.

Инструкция if-else-if-else
• Инструкция if позволяет организовывать и более сложные ветвления.
Например, можно организовать вложенную проверку условия.
if Условие1 :
Действие1
else :
if Условие2 :
Действие2
else :
Действие3

20.

Инструкция if-else-if-else
• Пример создания вложенного ветвления:
if 5 > 2 :
print("Пять больше двух")
else :
if 5 < 2 :
print("Пять меньше двух")
else :
print("Пять равно двум")

21.

Инструкция if-elif
• Однако для решения данной задачи можно воспользоваться ключевым
словом elif (от английского «else if» – «иначе если»), позволяющим
упростить оформление вложенности.
if Условие1 :
Действие1
elif Условие2 :
Действие2
else :
Действие3

22.

Инструкция if-elif
• Пример создания вложенного ветвления с использованием ключевого
слова elif:
if 5 > 2 :
print("Пять больше двух")
elif 5 < 2 :
print("Пять меньше двух")
else :
print("Пять равно двум")
• Следует заметить, что количество веток, начинающихся с elif,
неограниченно, как и количество вложенных друг в друга ветвлений.

23.

Контрольные вопросы
1. Для чего используются условные операторы в
программировании?
2. Как выглядит синтаксис условного оператора в языке
Python?
3. Какие формы условного оператора можно использовать в
языке Python?
4. Написать программу, определяющую вид треугольника
(равносторонний, равнобедренный, разносторонний) по заданным длинам сторон.
5. Определить, является ли введённый пользователем год
високосным.
English     Русский Rules