




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、模擬查找過程設(shè)計報告學(xué)院材料學(xué)院班級 材料074 學(xué)號 072017姓名 韓世超成績、設(shè)計思路1. 要達(dá)到的目的(1)基本目的:能夠完成一批數(shù)據(jù)的輸入并顯示,使用Label控件數(shù)組顯示。對線性查找和折半查找兩種算法過程進(jìn)行模擬。使用Label控件設(shè)置查找過程的指針,線性查找只需1個指針,而折半查找需要 3個,在模擬查找的過程中,要求指針動態(tài)改變位置,需要用到Timer控件,時間間隔為1秒。除了使用Option控件進(jìn)行查找方法的選擇,還可以使用菜單項進(jìn)行選擇。查找結(jié)果的查詢要求使用菜單命令調(diào)用另一窗體來實現(xiàn)。查找結(jié)果的顯示可以將找到的數(shù)據(jù)用特殊的顏色標(biāo)識出來。(2)創(chuàng)新目的: 如果輸入的目標(biāo)數(shù)據(jù)
2、不是數(shù)字,可以檢測并使輸入框獲得焦點。如果沒有找到數(shù)據(jù),在查找結(jié)果的窗體中作相應(yīng)的提示。 檢測輸入的數(shù)據(jù),如果不正確那么提示再次輸入。 折半查找中批數(shù)據(jù)必須是有序的,可以對輸入的數(shù)據(jù)進(jìn)行驗證,如果順序不對,要重新輸入。折半查找中如果批數(shù)據(jù)中有重復(fù)數(shù)據(jù),可以找到并標(biāo)出重復(fù)數(shù)據(jù)及位置。如1 23 45556 78 92關(guān)鍵問題的解決1、在Formoad事件中,讓數(shù)字指針不可見。2、在批數(shù)據(jù)的輸入中,用 INPUTBOX函數(shù)進(jìn)行輸入,并顯示到標(biāo)簽控件數(shù)組上。3、 將批數(shù)據(jù)的背景顏色設(shè)置為最開始的顏色。如果選擇的是線性查找,則使1個Label控件指針可見,否則應(yīng)使3個Label控件指針可見,并根據(jù) 查
3、找方法指向相應(yīng)的初始位置。然后啟動Timer1控件。(1)折半查找時指針初始位置如下,由于高度是固定不變的,這里不用考慮。=Label1(nMin).Left + Label1(nMin).Width / 2 -/ 2=Label1( nH alf).Left + Label1( nH alf).Width / 2 -/ 2=Label1( nM ax).Left + Label1( nM ax).Width / 2 -/ 2(2)線性查找時的指針位置設(shè)置如下:=Label1( nIn dex).Left + Label1( nIn dex).Width / 2 -/ 2、模塊之間的調(diào)用關(guān)系,
4、或程序流程圖三、部分程序關(guān)鍵源代碼及注釋Private Sub tmer_half_Timer()折半查找過程=Label1( nMin ).Left + Label1( nMin) .Width / 2 -/ 2=Label1( nHalf).Left + Label1( nHalf).Width / 2 -/ 2按升序排列時的查找檢驗最小值是否為目標(biāo)值=Label1( nM ax).Left + Label1( nM ax).Width / 2 -/ 2If n lsOrdered( nNum, n Total_Num) = ORDER_UP ThenIf nNum(nMin) = n T
5、arget Then=+ 查找到目標(biāo)數(shù)字” & nTarget & ”位于第” & nMin + 1 & ”位置” & vbCrLfLabel1(nMin).BackColor = RGB(O, 255, 0) bHasF ound = TrueEnd IfIf n Num( nM ax) = n Target The n檢驗最大值是否是目標(biāo)值=+ 查找到目標(biāo)數(shù)字” & nTarget & ”位于第” & nMax + 1 & ”位置” & vbCrLfLabel1( nM ax).BackColor = RGB(0, 255, 0)bHasF ound = TrueEnd IfIf n Nu
6、m( nHalf) = n Target The n檢驗中間值是否是目標(biāo)值=+ 查找到目標(biāo)數(shù)字” & nTarget & ”位于第” & nHalf + 1 & ”位置” & vbCrLfLabel1( nH alf).BackColor = RGB(0, 255, 0)nMax = nMax -1可以實現(xiàn)重復(fù)數(shù)據(jù)的查找nH alf = (nMin + nM ax) / 2bHasFound = TrueElseIf nNum(nHalf) nTarget Then nMax = nHalf nHalf = (nMin + nMax) / 2End IfIf nMax - nMin = 1 T
7、hen= True= FalseIf bHasFound = False Then= + 沒有查找到目標(biāo)數(shù)字End IfEnd IfEnd IfEnd Sub折半查找的過程Private Sub tmer_line_Timer() 線性查找= Label1(nIndex).Left + Label1(nIndex).Width / 2 -/ 2If nNum(nIndex) = nTarget ThenbHasFound = TrueLabel1(nIndex).BackColor = RGB(0, 255, 0)= + 查找到目標(biāo)數(shù)字 & nTarget & 位于第 & nIndex + 1
8、End IfnIndex = nIndex + 1If nIndex nTotal_Num ThennIndex = 0= FalseIf bHasFound = False Then查找到目標(biāo)數(shù)字& 位置 & vbCrLf未查到目標(biāo)數(shù)字的處理End If= 沒有找到目標(biāo)數(shù)字= TrueEnd IfEnd Sub四、設(shè)計方案的完善及目前存在的問題1設(shè)計方案要完善的地方折半查找時, 如果輸入了無序數(shù)據(jù)則要求重新輸入, 輸入量較大。 如果編輯程序使其實現(xiàn)自動排序?qū)?使程序更加合理。2. 目前存在的問題折半查找時,由于時鐘控件的作用,查找結(jié)果可能會在窗體中重復(fù)顯示。五、本次設(shè)計的收獲及心得體會通過本次 VB 課程設(shè)計, 我不但在程序閱讀和編輯方面得到很大的提高, 而且他還增加了我對于計算機 軟件的興趣,為我打開了通往精彩的“程序”世界的大門。程序的成功運行需要無數(shù)次的調(diào)試,這個過程需 要的是耐心與細(xì)心的品質(zhì), VB 課程設(shè)計再次告訴我,要有耐心與細(xì)心才能攻克我們面前的難關(guān),不論是課 程中的還是生活中的。六、對該題目和 VB 設(shè)計的意見和建議1. 對該題目的意見和建議此題目有效地提高了學(xué)生綜合利用 VB語
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 園林建設(shè)專項施工方案
- 2024年廣東省中考滿分作文《當(dāng)好自己故事的主角》3
- 合作商超協(xié)議合同范本
- 胃造口術(shù)后護理
- 農(nóng)莊永久出售合同范例
- 交運股合同范例
- 制定高效的日常生產(chǎn)計劃
- 加強知識管理的有效方式計劃
- 品牌數(shù)字化轉(zhuǎn)型的路徑與挑戰(zhàn)計劃
- 項目管理的最佳實踐計劃
- HYT 0332-2022 海洋大數(shù)據(jù)標(biāo)準(zhǔn)體系(正式版)
- 全新供土協(xié)議
- 發(fā)電機組檢修方案技術(shù)指導(dǎo)
- 第2課《讓美德照亮幸福人生》第2框《做守家庭美德的好成員》-【中職專用】《職業(yè)道德與法治》同步課堂課件
- 條件概率與全概率公式高二下學(xué)期數(shù)學(xué)人教A版(2019)選擇性必修第三冊
- (正式版)JBT 10437-2024 電線電纜用可交聯(lián)聚乙烯絕緣料
- 法律知識圖譜構(gòu)建及應(yīng)用
- 八卦的基本介紹及其科學(xué)內(nèi)涵
- 內(nèi)科護理學(xué)慢性腎衰竭
- (建筑制圖)課程綜合自測題3(試卷和答案)
- 公司商業(yè)模式策劃案關(guān)鍵合作伙伴
評論
0/150
提交評論