Selection: CASE · Условие: CASE
CASE chooses among values
CASE OFcompares one variable against several values.- It is tidier than many
IFs when each value gives a fixed result. - The block ends at
ENDCASE.
CASE выбирает среди значений
CASE OFсравнивает одну переменную с несколькими значениями.- Это аккуратнее, чем множество
IF, если каждому значению соответствует фиксированный результат. - Блок заканчивается на
ENDCASE.
DECLARE Grade : INTEGER
Grade ← 2
CASE OF Grade
1 : OUTPUT "Gold"
2 : OUTPUT "Silver"
3 : OUTPUT "Bronze"
ENDCASE
OTHERWISE catches the rest
OTHERWISEruns when no value matched.- Put it last, just before
ENDCASE.
OTHERWISE перехватывает остальное
OTHERWISEвыполняется, если ни одно значение не совпало.- Поместите его последним, непосредственно перед
ENDCASE.
DECLARE Day : INTEGER
Day ← 1
CASE OF Day
1 : OUTPUT "Monday"
2 : OUTPUT "Tuesday"
OTHERWISE OUTPUT "Another day"
ENDCASE
Watch out
- Each branch is written
value : result. The colon:is required. CASEtests equality with set values — useIFfor ranges likeMark >= 50.
Будьте осторожны
- Каждая ветвь пишется в формате
value : result. Двоеточие:обязательно. CASEпроверяет равенство с заданными значениями — используйтеIFдля диапазонов, таких какMark >= 50.
Common mistakes
CASE OF ... OTHERWISE ... ENDCASE;OTHERWISEcatches the rest.- Use CASE when you compare one variable against many values.
Распространенные ошибки
CASE OF ... OTHERWISE ... ENDCASE;OTHERWISEперехватывает остальное.- Используйте CASE, когда вы сравниваете одну переменную со множеством значений.
Now you try
- Read the input, then choose with
CASE OF ... ENDCASE. - Press Check answer to test it.
Теперь попробуйте сами
- Считайте ввод, затем выбирайте с помощью
CASE OF ... ENDCASE. - Нажмите Проверить ответ, чтобы протестировать её.
Read a Place (an INTEGER). Output Gold for 1, Silver for 2, Bronze for 3, and No medal for anything else. For input 2, output Silver. · Прочитайте Place (INTEGER). Выведите Gold для 1, Silver для 2, Bronze для 3, а для всего остального — No medal. Для ввода 2 выведите Silver.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
Read a CHAR G. Output Excellent for A, Good for B, OK for C, and Try again otherwise. For input B, output Good. · Прочитайте CHAR G. Выведите Excellent для A, Good для B, OK для C и Try again в противном случае. Для ввода B выведите Good.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.
Read an INTEGER N. Output small for 1, medium for 2, and large for anything else. For input 9, output large. · Прочитайте INTEGER N. Выведите small для 1, medium для 2, а для всего остального — large. Для ввода 9 выведите large.
Click Run to see the output here. · Нажмите Запустить, чтобы увидеть результат здесь.