通常,一个脚本是逐行读取和执行的,但是有各种各样的控制
结构来影响执行流程。
Qb536RpcTY if 命令允许在满足给定条件的情况下执行其他语句。
iq#{*:1 例子:
jK|n^5\ if a < 0 then
s,z~qL6& show "a is negative!"
b^o4Q[ 建议在新的行中开始 then 部分,并使用一些缩进以提高清晰度。此外,还可以添加一
{}O~tf_ 个在条件未满足时执行的 else 部分:
$7x2TiAL if a < 0 then
=sJ?]U show "a < 0 !!!"
8Fn\ycX#"l else
6= iHw24 show "Ok"
+
G@N 可以使用 begin 和 end 之间的块,而不是单个命令:
VkQ@c;C if a < 0 then
}EK{UM9y begin
5'2kP{; show "Problem: a < 0"
|RX#5Q>z b := 0
1IXtu end
%OQdUH4x else
JEUU~L; begin
|iM,bs b := sqrt(a)
#{i*9' show "Ok"
X8C7d6ca end
XwH>F7HPe 注意,begin 和 end 应该总是单独出现在一行中。此外,在“then”后面可以有一个命令,也可以没有任何命令,但不只是一个注释。
Kz HYh 在下文中,我们将“statement”一词用于以下内容之一:
- 单一命令
- begin 和end之间的一组命令
- 控制结构
对于“for”语句,可以对给定范围的每个值解释一次以下语句。例子:
`fv5U% for x := 1 to 10 do show x, ", ", sin(x):f6
-|>~I#vY 将使用不同的 x 值执行 show 命令。循环命令可以位于同一行(如上所述)或下一行(最好使用缩进以提高可读性,或者在 begin 和 end 之间可以有一个命令块)。
a6{Zp{"Y 后者的一个例子:
\!u<)kkyT y := 0
LrU8!r`a for j := 0 to 10 do
uwe#&