2697
Комментарий:
|
3129
|
Удаления помечены так. | Добавления помечены так. |
Строка 2: | Строка 2: |
Разбор задачи «[[../../Homework_TriangleCheck|Неравенство треугольника]]» | Разбор задачи «[[../Homework_TriangleCheck|Неравенство треугольника]]» |
Строка 4: | Строка 4: |
* С вычислением максимума | * С гипотезой о результате |
Строка 22: | Строка 22: |
* Ленивые вычисления | |
Строка 27: | Строка 28: |
[[/LecturesCMC/PythonIntro2021/02_Conditionals#A.2BBBAEOwQzBDUEMQRABDA_.2BBDsEPgQzBDgEOgQ4-|вся правда о логических выражениях в Python]] | [[LecturesCMC/PythonIntro2021/02_Conditionals#A.2BBBAEOwQzBDUEMQRABDA_.2BBDsEPgQzBDgEOgQ4-|вся правда о логических выражениях в Python]] |
Строка 54: | Строка 55: |
* Принцип. | Принцип: внутри цикла может быть что угодно. Если там вложенный цикл. он начнётся, отработает и закончится. |
Строка 56: | Строка 57: |
* Эффект от нарушения канонической схемы | |
Строка 58: | Строка 58: |
* Разбор эффектов) | * Эффект от нарушения канонической схемы |
Строка 61: | Строка 61: |
'''TODO''' | 1.#0 Прощёлкать: * [[https://greenteapress.com/thinkpython2/html/thinkpython2008.html|Главу в учебнике «Think Python»]] * [[https://pythontutor.ru/lessons/while/|Занятие в Pythontutor]] 1. '''TODO''' 1. ? 1. ? 1. ? |
Логические выражения и цикл
Разбор задачи «Неравенство треугольника»
С вложенным if
- С гипотезой о результате
Кстати, о максимуме из трёх:
1 M = M if (M := a if a > b else b) > c else c
Логические выражения
Вложенные условия → операция and
Любое условие из двух → or
Отрицание условия → not
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 |
- Ленивые вычисления
- Перепишем неравенство треугольника
«проверка на не-треугольник» (просто not от исходного выражения!)
правило раскрытия скобок и ǸOT (или наоборот ☺)
далее — булева алгебра (кажется, была в школе)…
вся правда о логических выражениях в Python
Цикл
Для записи алгоритма требуются (грубое предположение):
- переменные
- условные операторы
- циклы
Простой while:
- Пример: цикл со счётчиком
- Каноническая схема цикла:
- Инициализация
- Проверка условия
- Тело
- Изменение условия
- Пhимер: таблица умножения на 6
- Цикл по вводу
Поиск первого: флаговая переменная, break и else
Пропуск фрагмента кода: continue
Вложенные циклы
Принцип: внутри цикла может быть что угодно. Если там вложенный цикл. он начнётся, отработает и закончится.
- Пример: Цикл по вводу + цикл внутри
- Пример: Таблица умножения от 2 до 6
- Эффект от нарушения канонической схемы
Д/З
- Прощёлкать:
TODO
- ?
- ?
- ?