如果構造
if
構造(在 FORTRAN 77 中稱為塊 IF 語句)在許多程式語言中很常見。當邏輯表示式計算為 true 時,它有條件地執行一個程式碼塊。
[name:] IF (expr) THEN
block
[ELSE IF (expr) THEN [name]
block]
[ELSE [name]
block]
END IF [name]
哪裡,
- name - if 結構的名稱(可選)
- expr - 括在括號中的標量邏輯表示式
- block - 零個或多個語句或結構的序列
if then
語句開頭的構造名稱必須與 end if
語句中的構造名稱具有相同的值,並且它對於當前作用域單元應該是唯一的。
在 if
語句中,(in)評估語句的等式和邏輯表示式可以與以下運算子一起使用:
.LT. which is < ! less than
.LE. <= ! less than or equal
.GT. > ! greater than
.GE. >= ! greater than or equal
.EQ. = ! equal
.NE. /= ! not equal
.AND. ! logical and
.OR. ! logical or
.NOT. ! negation
例子:
! simplest form of if construct
if (a > b) then
c = b / 2
end if
!equivalent example with alternate syntax
if(a.gt.b)then
c=b/2
endif
! named if construct
circle: if (r >= 0) then
l = 2 * pi * r
end if circle
! complex example with nested if construct
block: if (a < e) then
if (abs(c - e) <= d) then
a = a * c
else
a = a * d
end if
else
a = a * e
end if block
if
構造的歷史用法是所謂的“算術 if”語句。但是,由於這可以被更現代的結構所取代,因此這裡沒有涉及。更多細節可以在這裡找到。