Basic Pascal Tutorial/Chapter 3/CASE/bg
│
български (bg) │
English (en) │
español (es) │
français (fr) │
日本語 (ja) │
中文(中国大陆) (zh_CN) │
CASE
(author: Tao Yue, state: changed)
Операторът за разглеждане на случаи case сравнява стойността на израз с няколко селектора. Селектор може да бъде константа, диапазон или списък от тях разделени със запетаи. Селектора се отделя от действието с двуеточие (:).
Да предположим, че искате да изпълните действие ако b е 1, 7, 2037, или 5; а в противен случай да изпълните друго действие. Може да го направите по следния начин:
if (b = 1) or (b = 7) or (b = 2037) or (b = 5) then
Statement1
else
Statement2;
Но в този случай ще е по-просто да направите списък от числата, за които искате да се изпълни Statement1. Това може да се направи с помощта на оператора case:
case b of
1,7,2037,5: Statement1;
otherwise Statement2
end;
Общата форма на оператора case е:
case expr of
Selector1: Statement1;
Selector2: Statement2;
...
Selectorn: Statementn;
otherwise Statement
end;
Частта otherwise е незадължителна. Когато е налична, тя се може да се различава за различните компилатори. При повечето от тях се използва думата else вместо otherwise.
Израза expr може да бъде всяка променлива или израз от дискретен тип. Не могат да се използват реални стойности!
Селекторите трябва да съдържат само имена на константи или изписани стойности, т.е. в тях не могат да се използват променливи.