講一講Visual Lisp的程序體結構

有過編程經歷的人都知道,程序一般有三種結構,一種是順序結構,一種是選擇結構,一種是循環結構。VisualLisp也不例外,其程序處理除了逐個逐個執行表達式的順序結構外,很多的執行還需要一定的條件,也有一些還需重複執行很多次,這就涉及到條件選擇結構或者叫判斷式,和循環結構。本文船長將和你一起了解Lisp選擇和循環結構基本知識。

(if <判斷式> <表達式> <表達式>)

先來看條件結構,其功能為檢驗判斷的結果,如結果成立則執行第一個表達式,否則執行第二個表達式。舉例如下:

(cond ((判斷式1) (表達式1))

((判斷式2) (表達式2))

……

(t (表達式n))

)

多條件時可以使用cond函數,由上而下逐一比較,執行判斷式成立相對應的表達式,如各判斷式均不成立則執行最後一個表達式。舉例如下:

Advertisements

(repeat 次數 (表達式1) (表達式2) (表達式3) ……)

循環結構體的一種形式,功能是重複執行循環內的表達式n次。比如求解1+2+3+……+50的總和,如下:

(while 判斷式 表達式)

循環結構的另外一種體,功能是當判斷式成立時執行表達式的內容,直到判斷式不成立跳出循環,如判斷式無法不成立,則循環將無限,一直執行循環體內的表達式。仍以上面的求解1+2+3+……+50的總和為例,如下:

Advertisements

你可能會喜歡