2332
Комментарий:
|
3826
|
Удаления помечены так. | Добавления помечены так. |
Строка 29: | Строка 29: |
== Рекурсивный вызов функции == * Условный оператор в функции: рекурсия * рекурсия — «тяжелая» операция: создание/удаление контекста * ⇒ ограничение по глубине * ⇒ критерий `log(N)` * Актуально ''конечная'' рекурсия: 1. Инициализация 1. Проверка условия 1. (Полезная нагрузка) 1. Изменение объектов, участвующих в условии * Примитивная рекурсия (счётчик) * Общая рекурсия (пока данные ''внезапно'' не обретут свойства) == Цикл (если успеем) == * Хвостовая рекурсия и Гвидо * Цикл `while` * `break` / `continue` * поиск первого и `else` к ''циклу'' == Д/З == 1.#0 Прочитать и отщёлкать [[http://greenteapress.com/thinkpython2/html/thinkpython2006.html|пятую главу учебника]] * Прочитать и отщёлкать [[http://greenteapress.com/thinkpython2/html/thinkpython2007.html|шестую главу учебника]] 1. '''TODO''' задание на АЛ 1. '''TODO''' задание на АЛ 1. '''TODO''' задание на рекурсию/цикл 1. '''TODO''' задание на рекурсию/цикл |
Логические выражения, условные операторы, рекурсия и цикл
Алгебра логики
Операции сравнения, тип bool, True и False
Алгебра логики над bool
or
and
A
B
A or B
A
B
A and B
False
False
False
False
False
False
False
True
True
False
True
False
True
False
True
True
False
False
True
True
True
True
True
True
Python3: and, or, not; низкий приоритет
- Пустые и непустые объекты Python3
- Алгебра логики над произвольными объектами Python3
- OR: если A истинно, результат истинен, вычислять B не надо
- ⇒ Python: если A истинно, результат равен A, иначе B
- AND: если A ложно, результат ложен, вычислять B не надо
- ⇒ Python: если A ложно, результат равен A, иначе B
⇒ частичное вычисление выражений A и B (например, 3+3 or 100/0)
||or
and
A
B
A or B
A
B
A and B
Пусто
Пусто
B
Пусто
Пусто
A
Пусто
Непусто
B
Пусто
Непусто
A
Непусто
Пусто
A
Непусто
Пусто
B
Непусто || Непусто || A || || Непусто || Непусто || B ||
- OR: если A истинно, результат истинен, вычислять B не надо
Выполнение, обусловленное свойствами данных
Условная операция выражение-True if выражение-условие else выражение-false
Условный оператор: if, if / else, if [/ elif [/ elif ... [else]...]]
Вложенный if и and
Рекурсивный вызов функции
- Условный оператор в функции: рекурсия
- рекурсия — «тяжелая» операция: создание/удаление контекста
- ⇒ ограничение по глубине
⇒ критерий log(N)
Актуально конечная рекурсия:
- Инициализация
- Проверка условия
- (Полезная нагрузка)
- Изменение объектов, участвующих в условии
- Примитивная рекурсия (счётчик)
Общая рекурсия (пока данные внезапно не обретут свойства)
Цикл (если успеем)
- Хвостовая рекурсия и Гвидо
Цикл while
break / continue
поиск первого и else к циклу
Д/З
Прочитать и отщёлкать пятую главу учебника
Прочитать и отщёлкать шестую главу учебника
TODO задание на АЛ
TODO задание на АЛ
TODO задание на рекурсию/цикл
TODO задание на рекурсию/цикл