《算法與程序設計》第二章備課參考_第1頁
《算法與程序設計》第二章備課參考_第2頁
《算法與程序設計》第二章備課參考_第3頁
《算法與程序設計》第二章備課參考_第4頁
《算法與程序設計》第二章備課參考_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

《算法與程序設計》第二章備課參考在《算法與程序設計》第二章中,教材有許多地方?jīng)]有講清楚,需要在教學中予以說明。現(xiàn)匯集一些問題,以利備課時參考、關于VB6.0上機操作的問題學會看程序的第一行語句,該語句決定了解決問題的事件是窗體事件還是按鈕事件,也決定了源程序代碼輸入VB的操作方式。1、如果程序的第一行語句為PrivateSubForm_Load(),(Private是私有聲明、Form是窗體名稱、Load是載入的意思、Sub指一個過程:即包含在Sub語句和EndSub語句中的一系列VB語句,從Sub語句后的第一個可執(zhí)行語句開始執(zhí)行,到遇到第一個EndSub語句結束。)其含義是窗口載入時要發(fā)生的事件,則源程序代碼輸入操作的方式為:添??偎存I=(VE國Ppr-Tll.Sfψ??.?∣?Fcππl(wèi)?『町ElIW1WEI程窗口右單?icFor?nl(F□rmli1,∏jSlβi≡≡i)E1"Yg?ftJd2在彈出的菜單中單擊淮看代碼”SrejCEfijj-?≡? *""1:??????3尸5300N3600.i?√J3在出現(xiàn)的代惻廚口中輸入程序源代用Ξl?上避1J什Fn.p??J2、如果程序的第一行語句為PrivateSubCommand1_Click(),其含義是點擊按鈕啟動CommandI按鈕單擊事件,則源程序代碼輸入操作的方式為:(1)將控件工具箱中的按鈕(下圖1所示)拖到窗體設計窗口(下圖2所示);C??-U□*]盤閡(2)雙擊該按鈕,將程序源代碼復制到打開的窗口中。二、課本P37“實踐”任務的問題。閱讀下列程序,先寫出運行的結果,說明程序的功能,然后上機驗證:(2)PrivateSubCommand1_Cick()輸入輸入MAX=(A+B)/2+ABS(A-B)/2EndSub輸入:2和5,11和7這個題目的問題在于當輸入:2和5,學生寫出的結果是5,而上機調(diào)試的結果是14。原因是由于在程序中沒有說明變量A、B的屬性,所以在語句MAX=(A+B)∕2+ABS(A-B)∕2中,(A+B)∕2就是將A、B當成字符串來運算,其結果是25/2。而在ABS(A-B)/2中,字符串無減法運算,這一項則變成了數(shù)字運算。三、課本P52實踐任務的問題。(1)閱讀如下程序,跟蹤程序的執(zhí)行過程,觀察變量A的值的變化,寫出循環(huán)結束時變量A的值、循環(huán)次數(shù)和程序運行結果。①PriVateSUbCommandLCliCk()ForA=1To10PrintAPriVateSUbCommandLCliCk()ForA=1To10S=S+ANextAEndSUb知識提升:讀懂關鍵語句S=S+A,賦值號“二”左邊是變量S;右邊的S是常量S,每次循環(huán)的值是不同的,S的初值是多少?即當A=1時,右邊的S=?而A=2時,S=?……從本質(zhì)上看S=S+A就是一個對A值進行連加的累加器,在本程序中S=1+2+3+...+100下面的第③題雷同。PriVateSubCommandLCliCk()ForA=100To1Step-1S=S+ANextAEndSubPriVateSubCommandLCliCk()ForA=1To10A=A+1PrintANextAEndSub知識提升:讀懂關鍵語句A=A+1,這是一個計數(shù)器程序,當循環(huán)過程中的A值為奇數(shù)時則輸出A。如果要求A值為偶數(shù)時輸出A,則程序如下:PriVateSubCommand1_CliCk()ForA=1To10A=A+1PrintAElseEndIf四、課本P53問題27的分析參考。陳婷今年17歲了,她的生日正好是3月12日植樹節(jié),今年植樹節(jié)老師帶同學們到公園里去植樹。陳婷很高興,一個人就栽了3棵樹,過了一個很有意義的生日。她想,如果從明年開始每年過生日的時候都去植樹,并且每一年都要比前一年多栽一棵樹,這樣下去,到多少歲時才能累計種到或超過100棵樹呢?首先思考:能否用For循環(huán)來解決?為什么?然后算法分析:(1)、存在什么變量?(2)、變量間的關系?(3)、變量變化特點?(4)、循環(huán)終止條件?1、分析問題設年齡為Age,種樹總數(shù)為Tree,則Tree可以用如下的式子表示:Tree=3+4+5+… (其中Age=17,18,19…)于是這個問題就可以轉(zhuǎn)化為:當Tree≥100時,求Age的值。2、設計算法根據(jù)上述的分析,可設計出如下的算法:(1)令Age=17;(2)令Tree=3;(3)Age=Age+1;(4)Tree=Tree+Age-14(5)如果Tree<100,則返回第(3)步;(6)輸出Age的值;(7)結束。參考幫助:tree=tree+age-14語句的算法優(yōu)化推導:①age和tree都是累加遞增,具有同樣的循環(huán)特點;②用age來表示tree,可以列式:tree=age-14;③根據(jù)S=S+tree可得:S=S+age-14,節(jié)省變量S,優(yōu)化程序為:tree=tree+age-14)五、對循環(huán)的嵌套進行探究Forj=1To3Fori=1To6NextiPrintNextj探究:利用上面的程序,若外層循環(huán)控制為1?8,內(nèi)層循環(huán)還是1?6,上機調(diào)試,查看輸出的圖形效果,并分析歸納出內(nèi)層循環(huán)控制什么?外層循環(huán)控制什么?得出結論:內(nèi)層循環(huán)次數(shù)控制一行中列的個數(shù),即列數(shù);外層循環(huán)次數(shù)控制行數(shù)。六、課本P56“實踐”任務的問題。(1)閱讀下面程序,寫出運行結果,并上機調(diào)試。PrivateSubCommand1_Ciick()DimSeAsString乘法表ForI=1To9ForJ=1To9PrintTab((J-1)*9);Se;NextJPrintNextIEndSub(2)如果要使程序的運行結果如下圖1、圖2所示,應該如何修改程序?4κ4≡L65κ?=Ξ0M=ZATκ4=385?1=5SkI=S9x1=9LmL=L2?1=2由1?34x1=4Vs5=Z56痣=307x5=35Sκ5=4O9x5=452κ2=≈4∕3jc2-64x2=S,5κ2=ia6求=蛭Tκ2=14Sκ2=1&9x2=183?^3=94?12Ξx3=155?15T?3=?l8κ3=24?x3÷276κ6=36Tw6=42S?B=4日9x6=54TmT=4?

8ιτ7≡56

9?7=?S?Fnrml圖1I?Forml^-InIxI乘怯盍Lxl=I1?ΞIXm筠 1手4=4 Lj∑5?, 1m6≡,6IXT=T IJtB二日iχg≡jgIiIB-,τ■改在42x3=& ??=?- 2x5=10 2x6=12 2x7=14 2κ8=??9=18需口=口 乳斗=Lg屈E=i5E¥6=1白 3浦=?:?S2見3x?2T4j?=1R 4k^=20 4k6=24 4xT=如 4≈i0=?4m9?365ifSE5?S=30 5i∑7≡?S前二doEXgTS-6aB=Sεβκ7=0 6≡i8=48E油二54TiiT=鉀 ?赧=鈍.7κ9=63

溫馨提示

  • 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

提交評論