Contents Index Search Previous Next
5.3 If Statements
1
An if_statement
selects for execution at most one of the enclosed sequences_of_statements,
depending on the (truth) value of one or more corresponding conditions.
Syntax
2
if_statement
::=
if condition then
sequence_of_statements
{
elsif condition then
sequence_of_statements}
[
else
sequence_of_statements]
end if;
3
condition
::= boolean_expression
Name Resolution Rules
4
A
condition
is expected to be of any boolean type.
Dynamic Semantics
5
For the execution of an
if_statement,
the
condition specified after
if,
and any
conditions specified after
elsif, are evaluated in succession (treating a final
else
as
elsif True
then), until one evaluates to True or all
conditions are evaluated and yield
False. If a
condition evaluates
to True, then the corresponding
sequence_of_statements
is executed; otherwise none of them is executed.
Examples
6
Examples of if
statements:
7
if Month = December and Day = 31 then
Month := January;
Day := 1;
Year := Year + 1;
end if;
8
if Line_Too_Short then
raise Layout_Error;
elsif Line_Full then
New_Line;
Put(Item);
else
Put(Item);
end if;
9
if My_Car.Owner.Vehicle /= My_Car then -- see 3.10.1
Report ("Incorrect data");
end if;
Contents Index Search Previous Next Legal