資源描述:
《多重循環(huán)與枚舉算法》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、枚舉算法與多重循環(huán)一、復(fù)習(xí)1.下面的程序段用于計算s=1*2+3*4+5*6+7*8+9*10則在程序的劃線處應(yīng)填上()S=0Fork=1to10step_____s=s+k*(k+1)Nextk(A)0(B)1(C)2(D)k2.在窗體上畫一個名稱為command1的命令按鈕,然后編寫如下事件過程:PrivateSubCommand1_Click()Dimn,mAsIntegerm=0Forn=1to20ifnMod3<>0thenm=m+n3NextnText1.text=str(m)EndSub程序運(yùn)行后,如果單擊命
2、令按鈕,則文本框Text1中顯示的內(nèi)容是(A)15(B)18(C)42(D)243.說出下面程序運(yùn)行后x的數(shù)值是()x=1DoWhile(xmod8<>0)or(xmod6<>0)x=x+1Loop121224二、新課1.單據(jù)問題:一張單據(jù)上有一個5位數(shù)的編號,其百位數(shù)和十位數(shù)處已經(jīng)變得模糊不清,如圖所示。但是知道這個5位數(shù)是37或67的倍數(shù)?,F(xiàn)在要設(shè)計一個算法,找出所有滿足這些條件的5位數(shù),并統(tǒng)計這些5位數(shù)的個數(shù)。單據(jù)問題界面設(shè)計(程序預(yù)演)列表框控件list1按鈕控件command1窗體form1單據(jù)問題代碼Privat
3、eSubCommand1_Click()Dimj,n,cAsIntegerc=0List1.ClearForj=___To________________________If________________________ThenList1.AddItemStr(n)c=c+1EndIfNextjList1.AddItem"總計有"+Str(c)+"個五位數(shù)"EndSub單據(jù)問題代碼PrivateSubCommand1_Click()Dimj,n,cAsIntegerc=0List1.ClearForj=0To99n=250
4、06+j*10IfnMod37=0OrnMod67=0ThenList1.AddItemStr(n)c=c+1EndIfNextjList1.AddItem"總計有"+Str(c)+"個五位數(shù)"EndSub課堂任務(wù)完成單據(jù)問題的程序雙重循環(huán)解決單據(jù)問題PrivateSubCommand1_Click()Dimi,j,n,cAsIntegerc=0List1.ClearFori=0to9Forj=0To9n=25006+i*100+j*10IfnMod37=0OrnMod67=0ThenList1.AddItemStr(n)c
5、=c+1EndIfNextjnextiList1.AddItem"總計有"+Str(c)+"個五位數(shù)"EndSub問題:下面程序運(yùn)行結(jié)束后變量s的值是多少?程序1S=0i=5Forj=1toiS=s+jNextj程序2S=0Fori=1to5Forj=1toiS=s+jNextjNexti2.包裝問題包裝600個變形金剛,要求是:(1)包裝的規(guī)格分別是:小盒(每合2個)、中盒(每合5個)、大盒(每合8個);(2)每種規(guī)格的合數(shù)都不能是0。設(shè)計一個算法,輸出所有可能的包裝方案,并輸出包裝方案的個數(shù)。變形金剛包裝問題代碼Priv
6、ateSubCommand1_Click()Dimx,y,z,cAsIntegerc=0List1.ClearForx=1To293Fory=1To118Forz=1To74If2*x+5*y+8*z=600ThenList1.AddItemStr(x)+""+Str(y)+""+Str(z)c=c+1EndIfNextzNextyNextxText1.Text=Str(c)EndSub小知識:循環(huán)內(nèi)嵌套循環(huán)的方式叫多重循環(huán)程序預(yù)演上機(jī)練習(xí):通過上機(jī)的方式完成本課件中復(fù)習(xí)題中的第一、第三兩題掌握msgbox()過程和str(
7、)函數(shù)的使用完成包裝問題操作速度快的同學(xué)完成單據(jù)問題。