/
n-dimens
/
pascalabcnet
Обзор
Документация
Войти
/
n-dimens
/
pascalabcnet
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
PABCNetHelp/LangGuide/Operators/case.html
71 строка
4 KB
samuraiGH
adding working-tree-encoding attribute (#3325)
07 ноя 2025, 16:12
Не верифицирован
07 ноя 2025, 16:12
cf1fd29
Код
Авторство
О чём код?
<html> <head> <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e"> <param name="Keyword" value="case"> <param name="Keyword" value="of"> <param name="Keyword" value="else"> <param name="Keyword" value="Оператор выбора"> </object> <object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e"> <param name="Keyword" value="case"> </object> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title></title> <link rel="StyleSheet" href="../../default.css"> </head> <body> <H1>Оператор выбора</H1> <p><i>Оператор выбора</i> выполняет одно действие из нескольких в зависимости от значения некоторого выражения, называемого <i>переключателем</i>. Он имеет следующий вид:</p> <blockquote> <p><b><code>case</code></b> <code class="codeit">переключатель</code> <code> <b>of<br> </b> </code> <code class="codeit">список выбора 1</code><code>: </code> <code class="codeit"> оператор1</code><code>;<br> ...<br> </code> <code class="codeit">список выбора N</code><code>: </code> <code class="codeit">операторN</code><code>;<br> <b> else</b></code> <code class="codeit">список операторов<br> </code><code><b>end</b>;</code> </p> </blockquote> <p>Переключатель представляет собой выражение <a href="../Types/index_types.html">порядкового типа</a> или строкового типа, а списки выбора содержат константы совместимого по присваиванию типа. Как и в операторе <b><code>if</code></b>, ветка <b><code>else</code></b> может отсутствовать. </p> <p>Оператор <b><code>case</code></b> работает следующим образом. Если в одном из списков выбора найдено текущее значение переключателя, то выполняется оператор, соответствующий данному списку. Если же значение переключателя не найдено ни в одном списке, то выполняется список операторов по ветке <b><code>else</code></b> или, если ветка <b><code>else</code></b> отсутствует, оператор <b><code>case</code></b> не выполняет никаких действий. </p> <p>Список выбора состоит либо из одной константы, либо для перечислимого типа из диапазона значений вида <code>a..b</code> (константа <code>a</code> должна быть меньше константы <code>b</code>); можно также перечислить несколько констант или диапазонов через запятую. Например:</p> <blockquote> <p><code><b>case </b>Country <strong>of</strong><br> 'Россия': Capital := 'Москва';<br> 'Франция': Capital := 'Париж';<br> 'Италия': Capital := 'Рим';<br> <strong>else</strong> Capital := 'Страна отсутствует в базе данных';<br><strong>end</strong>;</code></p> <p><code><b>case</b> DayOfWeek <b>of</b><br> 1..5: writeln('Будний день');<br> 6,7: writeln('Выходной день');<br> <b>end</b>;</code></p> </blockquote> <p>Списки выбора не должны пересекаться. Например, следующий фрагмент</p> <blockquote> <p><code><b>case</b> i <b>of</b><br> 2,5: write(1);<br> 4..6: write(2);<br> <b>end</b>;</code></p> </blockquote> <p>приведет к ошибке компиляции.</p> <p> </p> </body> </html>