答案:(1)DO WHILE N<3,(2)ENDDO,(3)N=N+1
【例20】用兩種循環(huán)步長值來求1+2+3+...50的值,請將程序填寫完整。
程序一:
S=0
FOR__(1)___
S=S+N
ENDFOR
? S
RETURN
程序二:
S=0
FOR__(2)___
S=S+N
ENDFOR
?S
RETURN
分析:這是一個計數(shù)循環(huán)的例子,由以上兩種方法可以看出,初值和終值的設(shè)定是隨步長值不同而變化
的,在程序一中,由于步長為1,所以省略了。缺省時,步長值默認為1。
答案:(1)N=1 TO 50,(2)N=50 TO 1 STEP -1
[例21] 求30!,請將程序填寫完整。
程序:N=1
I=I*N
N=N+1
ENDDO
?I
分析:在進入循環(huán)前,必須組織好循環(huán)使累加器先賦初值勤,循環(huán)條件表達式中的控制變量也要根據(jù)
不同情況賦初值,因為循環(huán)的次數(shù)是和條件表達式中的控制變量所賦的初值密切相關(guān)的。循環(huán)體包括了
在循環(huán)體中的書寫順序也與循環(huán)的初始賦值有關(guān)。讀者可以考慮一下,如果給N賦上班,那么DO WHILE
后面的條件表達式該怎么來寫?
答案:N<=30
[例22] 為了解決在子程序和主程序之間可能會出現(xiàn)變量的重復(fù)使用命令_______,這樣可以使主程序中
的變量暫時在子程序中無效,而不改變它的值。
分析;為了避免子程序和主程序之間變量帶來的問題,可以使主程序中使用命令PRIVATE隱藏主程序
中可能存在的變量,使得在子程序中暫時無效。該命令的語法格式是:
PRIVATE<內(nèi)存變量表>
答案:private<內(nèi)存變量表》
例23 統(tǒng)計銀行客房關(guān)系表中,銀行代碼為001,并且存款金額大于1500元的客房人數(shù),請將程序填寫完整。
程序:
clear
open銀行客戶關(guān)系表exclusive
browse all for銀行代碼=“001”
count all to kh
goto top
num=0
for(1)
if(2)
num=num+1
endif
skip
endfor
@2,30 say"銀行代碼為001,存款金額大于1500元的人數(shù)有:“num+””
endif
use
分析:在該例中,for語句使用了循環(huán)變量1控制操作,道德計算出了數(shù)據(jù)表中所含記錄個數(shù)num,
然后把它人微言輕循環(huán)變量的終值,使循環(huán)變量從1開始,多次加入循環(huán)變量步長,直到循環(huán)變量1大于
num時才結(jié)束循環(huán)。
答案:(1)I=1 to kh step1,(2)金額>“1500”and,銀行代碼=“001”
例24 下例是關(guān)于參數(shù)傳遞的程序,求出正確結(jié)果。
程序:
clear
store 3 to a,b
store 2 to c,d
do tub with a,b,c,d
?b
store 4 to t2,t1
store 1 to t4,t3
do tub with t1,t2,t3,t3
?t4
do tub with 6,6,3,b
?b
procedure tub
PARAMETER A,B,C,D
B=A* A-4 *C* D
DO CASE
CASE B<0
B=120
CASE B>0
B=210
CASE B=0
B=100
ENDCASE
RETURN
分析: 在程序開始對A,B賦值為3,對C,D賦值為2。然后把實參A、B、C、D傳遞給予程序TUB,根據(jù)表達式B=A*A-4*c*D
計算出結(jié)果為-7,所以輸出結(jié)果為120,同樣,以下程序執(zhí)行時,根據(jù)表達式的計算結(jié)果,輸出依次為1和6。
答案:結(jié)果顯示在3行上,依欠為120,1,6
[例25] 根據(jù)輸入的半和徑值,計算圓的面積,請將程序填寫完整。
程序:
CLEAR
R=0
SM=0
@12,15 SAY “輸入圓半徑” CET R
READ
IF R=0
EXIT
ENDIF
————
@16,16 SAY“圓的面積為:”+ ALLTRIM(STR(SM))
ENDDO
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |