1.2.3循環(huán)語句_第1頁
1.2.3循環(huán)語句_第2頁
1.2.3循環(huán)語句_第3頁
1.2.3循環(huán)語句_第4頁
1.2.3循環(huán)語句_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、1.2.3基本算法語句 循環(huán)語句,算法中的循環(huán)結構是由循環(huán)語句來實現(xiàn)的 .,循環(huán)結構有兩種-當型與直到型.,當型循環(huán)結構(當條件滿足時反復執(zhí)行循環(huán)體),直到型循環(huán)結構(反復執(zhí)行循環(huán)體直到條件滿足),對應于程序框圖中的兩種循環(huán)結構,一般程序設計語言中也有當型(WHILE型)和直到型(UNTIL型)兩種語句結構。,(1)UNTIL語句的一般格式是:,DO 循環(huán)體 LOOP UNTIL 條件,DO做什么,LOOP UNTIL繞環(huán)回線走,直到達到某種 條件為止,思考:參照其直到型循環(huán)結構對應的程序框圖,說說 計算機是按怎樣的順序執(zhí)行UNTIL語句的?,即WHILE語句和UNTIL語句。,(1)UNTI

2、L語句的一般格式是:,DO 循環(huán)體 LOOP UNTIL 條件,從UNTIL型循環(huán)結構分析,計算機執(zhí)行該語句時,先 執(zhí)行一次循環(huán)體,然后進行條件的判斷,如果條件不 滿足,繼續(xù)返回執(zhí)行循環(huán)體,然后再進行條件的判斷, 這個過程反復進行,直到某一次條件滿足時,不再執(zhí) 行循環(huán)體,跳到LOOP UNTIL語句后執(zhí)行其他語句, 是先執(zhí)行循環(huán)體后進行條件判斷的循環(huán)語句.,(2)WHILE語句的一般格式是:,WHILE 條件 循環(huán)體 WEND,其中循環(huán)體是由計算機反復執(zhí)行的一組語句構成的。WHLIE后面的“條件”是用于控制計算機執(zhí)行循環(huán)體或跳出循環(huán)體的。,WHILE當 時候,WEND朝方向 行走,(2)WHI

3、LE語句的一般格式是,WHILE 條件 循環(huán)體 WEND,當計算機遇到WHILE語句時, 先判斷條件的真假,如果條件 符合,就執(zhí)行WHILE與WEND之間的循環(huán)體;然后再檢查上述條件,如果條件仍符合,再次執(zhí)行循環(huán)體,這個過程反復進行,直到某一次條件不符合為止.這時,計算機將不執(zhí)行循環(huán)體,直接跳到WEND語句后,接著執(zhí)行WEND之后的語句.,提問:通過對照,大家覺得WHILE型語句與UNTIL型 語句之間有什么區(qū)別呢?,區(qū)別:在WHILE語句中,是當條件滿足時執(zhí)行循環(huán) 體,而在UNTIL語句中,是當條件不滿足時執(zhí)行循環(huán) 體。,練習1.編寫程序, 計算自然數(shù)1+2+3+99+100的和.,分析:這

4、是一個累加問題.我們可以用WHILE型語句,也可以用UNTIL型語句。,i=1 S=0,DO,S=S+i i=i+1,LOOP UNTIL,i100,PRINT S,END,i=1 S=0,WHLIE i=100,S=S+i,i=i+1,WEND,PRINT S,END,變式訓練(1): 編寫程序求:n!=12345n的值.,如何修改?,WHILE語句,i=1 S=0,WHLIE i=100,S=S+i,i=i+1,WEND,PRINT S,END,INPUT “n=”;n,S=1,S=Si,in?,S=1,n,S=Si,變式訓練(2): 編寫程序求:1357101的值.,如何修改?,UNIT

5、L語句,i=1 S=0,DO,S=S+i,i=i+1,LOOP UNTIL i100,PRINT S,END,S=1,101,S=Si,i=i+2,直到型,S=1,S=Si,i=i+2,i101?,變式3:函數(shù)y=x2-3x+5,從x=1開始連續(xù)輸入19個自然數(shù)進行取值,輸出相應的函數(shù)值,用程序語言進行編程,n=1,DO,y=x2-3x+5,LOOP UNTIL n20,PRINT “x=”;x, “y=”;y,END,n=n+1,程序,直到型,當型,n=1,WHILE n=20,y=x2-3x+5,WEND,PRINT “x=”;x, “y=”;y,END,n=n+1,程序,結束,否,練習2

6、:根據(jù)P7頁圖1.1-2,將程序框圖轉化為程序語句.,分析:仔細觀察,該程序框圖中既有條件結構,又有循環(huán)結構。,INPUT “n=”;n i=2 DO r=n MOD i i=i+1 LOOP UNTIL i=n OR r=0 IF r=0 THEN PRINT “n is not a prime number.” ELSE PRINT “n is a prime number.” END IF END,程序,練習3.圖1.1-20,轉化成程序語言,程序框圖,程序,INPUT “a,b,d=”;a,b,d,DO,m=(a+b)/2,f=m2-2,g=a2-2,IF gf0 THEN,b=m,E

7、LSE,a=m,END IF,LOOP UNTIL ABS(a-b)d OR f=0,PRINT m,END,繼續(xù),是,是,否,程序框圖,開始,f(x)=x2-2,輸入誤差d 和初值a,b,b=m,否,a=m,|a-b|d或f(m)=0?,輸出m,結束,返回,練習4,求S=1+1/2+1/3+1/n,編寫程序,程序,INPUT “n=”;n,i=1,S=0,WHILE i=n,S=S+1/i,i=i+1,WEND,PRINT “S=”;S,END,練習5.P33頁A組T3.,程序,INPUT “n=”;n,i=1,S=0,WHILE i=n,S=S+(i+1)/i,i=i+1,WEND,PRI

8、NT “S=”;S,END,練習6.P33頁B組T4.,程序,INPUT “a=”;a,INPUT “n=”;n,tn=0,sn=0,i=1,WHILE i=n,tn=tn+a,sn=sn+tn,a=a10,i=i+1,WEND,PRINT sn,END,練習7.P32T2,編寫一個程序,輸入正整數(shù)n,計算它的 階乘n!(n!=n*(n-1)*3*2*1),練習8,(1)、設計一個算法框圖:逐個輸出12,22,32,n2,并寫出相應的QBASIC程序。,INPUT n i = 0 WHILE i n i = i + 1 t = i 2 PRINT t WEND END,INPUT n i = 0 DO i = i + 1 t = i 2 PRINT t LOOP UNTIL i = n END,(2)、設計一個算法框圖:求滿足12 3 n10000的最小正整數(shù)n,并寫出相應的QBASIC程序。,i = 0,sum

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論