循環(huán)嵌套與窮舉法.ppt_第1頁
循環(huán)嵌套與窮舉法.ppt_第2頁
循環(huán)嵌套與窮舉法.ppt_第3頁
循環(huán)嵌套與窮舉法.ppt_第4頁
循環(huán)嵌套與窮舉法.ppt_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、循環(huán)嵌套和窮法,二中信息技術(shù)科李展,五,循環(huán)嵌套,一,for句適用情況。 2 .循環(huán)句的相互嵌套。 fori 3360=1to3doforj 3360=1to 4數(shù)據(jù)寫入(I,j )。讀取普計程儀程序,寫出執(zhí)行結(jié)果的program ex302; var i,j :整合器; t :長度; begin fori 3360=1to5do begint :=1。 for j :=1到I do t :=TJ。 寫入(t,); 結(jié)束; writeln; end .試制可以印刷輸出如下圖形的普通計程儀程序。 是# # # # # # #的var i、j、k 3360整流器; 北朝鮮3360=8朝北朝鮮336

2、0=1朝右(); j :=1to2* I-1數(shù)據(jù)寫入(# ); writeln; 結(jié)束; readln; 結(jié)束。 選擇為塔斯克:創(chuàng)建可輸出以下形式的“字母塔”的aaba abcba . abcdefghijklmnopqrstuvwxwvutsrqponmlkjihgfedcbaabcdefghijklmnopqrstuvwxyx baabcdefghijklba qponmlkjihgfedcba,6,循環(huán)嵌套中的窮法,循環(huán)嵌套可以讓我們窮一些問題。 所謂貧窮法,就是嘗試問題可能解的所有情況,適合這些情況的解就是問題的解。 例5-7、(教科書P47-48 )、例5-8判斷一個數(shù)是否為素數(shù)(P

3、48 )、分析:素數(shù)(素數(shù))的定義為: 1和除此以外的因子(約數(shù))沒有check :=true; fori 3360=2tondoifnmodi=0then begin check :=假。 中斷; break語句:for循環(huán)結(jié)束; ifcheckthenwriteln (是) else writeln (否); 問題:必須列舉2-n次。 n越大,項目群越慢,分析器:如何使用我們掌握的數(shù)學(xué)知識來優(yōu)化算法。 可以將任何正整數(shù)表示為: n :=a * b (a=sqrt(n ) )。 這表明假定n具有因子a,則需要因子b (b=n div a )。 請優(yōu)化上機實踐:前的修正算法。 例5-8求100

4、-200之間的素數(shù)。 (P48 )、fori 3360=100 to 200 dobeginx :=2。 威爾(x0)德奧伊納克(x ); inc(x )相當(dāng)于x :=x 1。 ifx中繼(sqrt (I ) )筆記本電腦(I :8 )。 結(jié)束; (P49 ),1. Break語句對當(dāng)前存在的最內(nèi)層循環(huán)2. Continue當(dāng)前的循環(huán)變量加1,將循環(huán)控制轉(zhuǎn)移到條件判定位置3. halt,結(jié)束整個程序4. Exit,將當(dāng)前的進程或函數(shù)我們將在后面的章節(jié)中討論for i:=1 to 10 do begin inc(s )。 ifi=5天中斷; 結(jié)束; 寫入(s=,s ); 中斷語句,s :=0;

5、fori 3360=1to5dobegin forj :=1to5dobeginifjithenbreak 英國語: 結(jié)束; 結(jié)束; 寫入(s=,s ); 繼續(xù)文件,s :=0; fori 3360=1to 10 dobegin if imod2=0天連續(xù)。 英國語: 結(jié)束; 寫入(s=,s ); continue文件,fori 3360=1to3dobegin forj :=1to3dobegin if j=ithencontinue 寫入(j : 3、j : 3 ); 結(jié)束; 結(jié)束; halt語句,var str :字符串; beginwhiletruedobeginreadln (str

6、 ); if str=zmkm then halt; writeln (世界密碼! ); 結(jié)束; writeln (歡迎光臨! ); 水仙花的數(shù)量,問題的說明:求100999中水仙花的數(shù)量。 (如果ABC為三位數(shù),ABC=A3 B3 C3,則將ABC稱為水仙花的花數(shù)。 例如,如果153、135333=112527=153,則153是水仙花的花數(shù)。水仙花的數(shù)量,program ex6_1; var a、b、c 3360整流器; begin fora 3360=1to9doforb 3360=0to9doforc 3360=0to9doif a * a * b * c * c=a * 100 b

7、* 10 cthe et end .例如誰是冠軍P64,甲乙丙戊五人在運動會上是100米“甲隊獲得百米冠軍,戊隊獲得跳遠冠軍。 丙在跳遠中獲勝,丁在200米中獲勝。 “乙方獲得跳躍冠軍,獲得金屬鉛冠軍。 其中每個人只說對話,說錯話。 每五個人爭奪哪個冠軍? 例如誰是冠軍P64,分析: (1)把5個項目分別表示為1、2、3、4、5,用變量a、b、c、d、e分別表示甲乙丙烯獲得冠軍的項目。 很明顯,a b c d e的值必定是1 2 3 4 5的排列。 (2)如何表達a、b、c、d各人的邏輯性判斷? “乙獲得了金屬鉛冠軍,丁獲得了跳高冠軍。 已知的Ord(true )=1,Ord(false )=0時,a表示一半,而弄錯一半的邏輯是? 百米(1)、二百米(2)、跳躍(3)、跳躍(4)和鉛球(5),根據(jù)分析:乙獲得鉛球冠軍,丁獲得跳高冠軍。 Ord(b=5 ) Ord(d=3 )=1說:甲獲得百米冠軍,戊獲得跳遠冠軍。 Ord(a=1 ) ord(e=3 )=1這樣推算的話,就成為fora 3360=1to5doforb 3360=1to5do forc 3360=1to5do Ford 3360=1to5do Ford 3360=的if (a * b * c

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論