Selection — IF and CASE · Условный оператор — IF и CASE
Making a decision
- Selection means choosing what to do, based on a test.
- An
ifruns its block only when the test is true. - The test gives a Boolean:
TrueorFalse.
Принятие решений
- Выбор (Selection) означает выбор действий на основе проверки условия.
- Блок
ifвыполняется только тогда, когда условие истинно. - Проверка дает логическое значение:
TrueилиFalse.
age = 20
if age >= 18:
print("You may vote")
else: the other path
elseruns when theiftest is false.- Exactly one of the two blocks runs.
else: альтернативный путь
- Блок
elseвыполняется, когда проверка в блокеifложна. - Ровно один из двух блоков выполняется.
mark = 45
if mark >= 50:
print("Pass")
else:
print("Fail")
elif: many paths
- Use
elifto test more conditions in order. - Python checks each test top to bottom and stops at the first true one.
elif: множество путей
- Используйте
elifдля проверки дополнительных условий последовательно. - Python проверяет каждое условие сверху вниз и останавливается на первом истинном.
mark = 72
if mark >= 70:
print("A")
elif mark >= 50:
print("B")
else:
print("C")
if / elif / else — which runs? · if / elif / else — какой блок выполнится?
Tests run top-down; the first true one runs, the rest are skipped. · Условия проверяются сверху вниз; выполняется первое истинное условие, остальные пропускаются.
Comparison operators
==means equal to (the exam writes=).!=means not equal to (the exam writes<>).- Also use
<,>,<=,>=.
Операторы сравнения
==означает равно (на экзамене пишется=).!=означает не равно (на экзамене пишется<>).- Также используйте
<,>,<=,>=.
print(5 == 5) # True
print(5 != 3) # True
print(3 <= 2) # False
In the exam: IF and CASE
- Pseudocode uses
IF … THEN … ELSE … ENDIF, orCASEfor many fixed choices.
На экзамене: IF и CASE
- Псевдокод использует
IF … THEN … ELSE … ENDIFилиCASEдля множества фиксированных вариантов выбора.
IF Mark >= 50
THEN
OUTPUT "Pass"
ELSE
OUTPUT "Fail"
ENDIF
Common mistakes
- Compare with
==, not=. - Cover every case, including the
else. - Indent the block that belongs to each branch.
Распространенные ошибки
- Сравнивайте с
==, а не с=. - Охватите все случаи, включая случай по умолчанию (
else). - Сделайте отступ для блока, принадлежащего каждой ветке.
Now you try
- Read the input, then choose what to print with
if/elif/else. - Press Check answer to test your code.
Теперь попробуйте сами
- Прочитайте входные данные, затем выберите, что вывести с помощью
if/elif/else. - Нажмите Check answer (Проверить ответ), чтобы протестировать свой код.
Read a whole number, then print even if it divides by 2 with no remainder, otherwise print odd. For input 4, print even. · Прочитайте целое число, затем выведите текст even, если оно делится на 2 без остатка, иначе выведите текст odd. Для входных данных 4 вывод должен быть равен тексту even.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
Read a mark (0–100). Print A for 70 or more, B for 50–69, and C for anything less. For input 65, print B. · Прочитайте оценку (от ⟨0⟩ до ⟨100⟩). Выведите текст ⟨A⟩ для значений ⟨70⟩ и выше, текст ⟨B⟩ для диапазона ⟨50⟩–69⟩, и текст ⟨C⟩ для любых меньших значений. Для входного значения ⟨65⟩ выведите текст ⟨B⟩.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
Two numbers a and b are set for you. Use an if to store the larger one in biggest. · Два числа ⟨a⟩ и ⟨b⟩ заданы вам. Используйте конструкцию ⟨if⟩ для сохранения наибольшего из них в переменную ⟨biggest⟩.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.