Difference between revisions of "Else/ru"
(Created page with "{{else}} <br> [http://www.freepascal.org/docs-html/ref/refsu51.html#x144-15400013.2.3 Else at Language Reference] '''Else''' является Keyword/ru|ключевым с...") |
m (Fixed syntax highlighting) |
||
Line 1: | Line 1: | ||
{{else}} | {{else}} | ||
− | + | ||
[http://www.freepascal.org/docs-html/ref/refsu51.html#x144-15400013.2.3 Else at Language Reference] | [http://www.freepascal.org/docs-html/ref/refsu51.html#x144-15400013.2.3 Else at Language Reference] | ||
Line 6: | Line 6: | ||
= [[If/ru|If]] [[Then/ru|Then]] Else = | = [[If/ru|If]] [[Then/ru|Then]] Else = | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang="pascal"> | ||
If (condition) | If (condition) | ||
Then true_statement | Then true_statement | ||
Line 18: | Line 19: | ||
Если вам необходимо использовать два или более операторов в качестве инструкций ''true_statement'' или ''false_statement'', то вам следует сгруппировать эти операторы, поместив их в [[Block/ru|блок]] [[Begin/ru|Begin]] ... [[End/ru|End]]. | Если вам необходимо использовать два или более операторов в качестве инструкций ''true_statement'' или ''false_statement'', то вам следует сгруппировать эти операторы, поместив их в [[Block/ru|блок]] [[Begin/ru|Begin]] ... [[End/ru|End]]. | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang="pascal"> |
if boolean_condition then | if boolean_condition then | ||
begin | begin | ||
Line 35: | Line 36: | ||
Однако, в случае вложенных операторов ''if'', если ''else'' относится к ''внутреннему'' оператору ''if'', то перед ''else'' точку с запятой ставить ''не нужно''; если оператор ''else'' относится к внешнему оператору ''if'', то перед ним ''нужно'' ставить точку с запятой: | Однако, в случае вложенных операторов ''if'', если ''else'' относится к ''внутреннему'' оператору ''if'', то перед ''else'' точку с запятой ставить ''не нужно''; если оператор ''else'' относится к внешнему оператору ''if'', то перед ним ''нужно'' ставить точку с запятой: | ||
− | <syntaxhighlight> | + | <syntaxhighlight lang="pascal"> |
if a then | if a then | ||
if b then | if b then | ||
Line 46: | Line 47: | ||
end; | end; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
В этом случае '''else''' относится к ''"if a"'' | В этом случае '''else''' относится к ''"if a"'' | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang="pascal"> | ||
if a then | if a then | ||
if b then | if b then | ||
Line 58: | Line 61: | ||
end; | end; | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
В этом случае '''else''' относится к ''"if b"''. Если это вызывает неясность, то это можно разрешить с помощью отсутствия кода в операторе '''else''': | В этом случае '''else''' относится к ''"if b"''. Если это вызывает неясность, то это можно разрешить с помощью отсутствия кода в операторе '''else''': | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang="pascal"> | ||
if a then | if a then | ||
if b then | if b then |
Latest revision as of 07:45, 14 January 2020
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
русский (ru) │
Else является ключевым словом, представляющим действие, которое выполнится, если условие ложно.
If Then Else
If (condition)
Then true_statement
Else false_statement;
Вначале вычисляется значение условия condition. Если оно истинно, то выполняется оператор true_statement, в противном случае выполняется оператор false_statement. Значение условия должно быть типа Boolean иначе возникнет ошибка.
Более одного оператора в конструкции "if then else"
Если вам необходимо использовать два или более операторов в качестве инструкций true_statement или false_statement, то вам следует сгруппировать эти операторы, поместив их в блок Begin ... End.
if boolean_condition then
begin
statement_one;
statement_two;
end
else
begin
statement_three;
statement_four;
end;
При обычном использовании, оператор else является особым исключением из правил, согласно которому каждый оператор должен оканчиваться точкой с запятой. Ни для оператора else, ни для предшествующего ему оператора не требуется ставить точку с запятой. В примере выше первый оператор end не оканчивается точкой с запятой, а последний оканчивается.
Однако, в случае вложенных операторов if, если else относится к внутреннему оператору if, то перед else точку с запятой ставить не нужно; если оператор else относится к внешнему оператору if, то перед ним нужно ставить точку с запятой:
if a then
if b then
begin
(..)
end;
else
begin
(..)
end;
В этом случае else относится к "if a"
if a then
if b then
begin
(..)
end
else
begin
(..)
end;
В этом случае else относится к "if b". Если это вызывает неясность, то это можно разрешить с помощью отсутствия кода в операторе else:
if a then
if b then
begin
(..)
end
else
else
begin
(..)
end
Ключевые слова: begin — do — else — end — for — if — repeat — then — until — while