




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
項目5循環(huán)結(jié)構(gòu)程序設(shè)計學習目標知識技能目標:能正確使用關(guān)系表達式表示循環(huán)條件能正確使用邏輯表達式表示循環(huán)條件能正確使用while語句編寫循環(huán)能正確使用do...while語句實現(xiàn)循環(huán)能正確使用for語句實現(xiàn)循環(huán)能正確使用break,continue語句職業(yè)素養(yǎng)目標:具備精益求精的工匠精神,優(yōu)化循環(huán)性能,提高程序的執(zhí)行效率具備勇攀高峰的職業(yè)素養(yǎng),探索用新技術(shù)實現(xiàn)更高效的循環(huán)實現(xiàn)課證融通學習內(nèi)容與“大數(shù)據(jù)應(yīng)用開發(fā)(Java)”職業(yè)技能等級標準(初級)對應(yīng)關(guān)系工作任務(wù)職業(yè)技能要求1.2面向過程代碼編寫1.2.2能熟練運用分支、循環(huán)等流程控制完成較復(fù)雜程序設(shè)計;1.2.4能熟練利用JavaSE的StringAPI完成字符串存取和運算;任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1質(zhì)數(shù)又稱素數(shù)。一個大于1的自然數(shù),除了1和它自身外,不能被其他自然數(shù)整除的數(shù)叫做質(zhì)數(shù);否則稱為合數(shù)(規(guī)定1既不是質(zhì)數(shù)也不是合數(shù))。素數(shù)的應(yīng)用領(lǐng)域非常廣泛,比如在密碼學中,素數(shù)用于生成公鑰,將要傳遞的信息在編碼時加入質(zhì)數(shù),編碼之后傳送給收信人,任何人收到此信息后,若沒有此收信人所擁有的密鑰,則需要花很長時間去解密(尋找質(zhì)數(shù))。本任務(wù)要求:編程實現(xiàn),鍵盤輸入一個正整數(shù),判斷并輸出是否是質(zhì)數(shù)。判斷質(zhì)數(shù)的思路:對正整數(shù)n,如果用2到√n之間的所有整數(shù)去除,均無法整除,則n為質(zhì)數(shù)。任務(wù)詳解任務(wù)描述任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1微課1-1Java前世今生技能點1:識別循環(huán)的四個要素(1)初始條件:這是循環(huán)開始之前必須滿足的條件,它決定了循環(huán)的次數(shù)和起始狀態(tài)。(2)循環(huán)條件:這是在每次循環(huán)迭代結(jié)束時檢查的條件。如果循環(huán)條件為真,則循環(huán)繼續(xù)執(zhí)行;否則,循環(huán)終止。(3)循環(huán)體:這是循環(huán)中要重復(fù)執(zhí)行的代碼塊。在每次循環(huán)迭代中,循環(huán)體中的代碼會被執(zhí)行一次或多次。(4)使循環(huán)趨于結(jié)束的語句:不允許出現(xiàn)死循環(huán)。技術(shù)準備循環(huán)的四個要素包括:任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1練一練1.寫出用循環(huán)實現(xiàn)計算1+2+...+100的累加和的循環(huán)四要素。循環(huán)的初始條件:
循環(huán)條件:
循環(huán)體:
使循環(huán)趨于結(jié)束的語句:
2.寫出用循環(huán)計算n!=1*2*3*...*n的循環(huán)的四要素循環(huán)的初始條件:
循環(huán)條件:
循環(huán)體:
使循環(huán)趨于結(jié)束的語句:
任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1技能點2:計算一個數(shù)的平方根java.lang包下的Math類提供了常用的數(shù)學函數(shù),包括三角函數(shù)、指數(shù)函數(shù)、基本數(shù)學函數(shù)等。技術(shù)準備案例:鍵盤輸入一個整數(shù),計算并輸出其平方根教師演示技能點3:用while語句實現(xiàn)循環(huán)任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1語法: while(循環(huán)條件)
語句塊執(zhí)行流程:while語句先判斷循環(huán)條件,如果循環(huán)條件為false,循環(huán)體一次也不執(zhí)行;如果循環(huán)條件為true,執(zhí)行循環(huán)體,再判斷循環(huán),直到循環(huán)條件為false,結(jié)束循環(huán)。while語句執(zhí)行流程圖技術(shù)準備技能點3:用while語句實現(xiàn)循環(huán)任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1技術(shù)準備使用說明:(1)先判斷條件,再執(zhí)行循環(huán)體,有可能一次也不執(zhí)行循環(huán)體。(2)語句塊不止一條語句,應(yīng)該用花括號括起來;(3)while(循環(huán)條件)后不應(yīng)該加分號,如果加分號,循環(huán)體就是空語句。
while(x<100);(4)循環(huán)條件的值的類型是boolean。任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1案例:設(shè)計并實現(xiàn)一程序,在屏幕上輸出5行“ILoveProgramming!”教師演示第一步:任務(wù)分析第二步:編碼實現(xiàn)第三步:運行并查看結(jié)果任務(wù)實施任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1第一步:任務(wù)分析判斷一個數(shù)num是否是素數(shù),如果num=1,不是素數(shù),如果num=2,是素數(shù),若num>2,用num除2到sqrt(num)之間的任何一個數(shù)都不為0,則num是素數(shù)。因此,當num>2時,用循環(huán)實現(xiàn),先找出循環(huán)的四個要素:循環(huán)的初始條件:用i表示除數(shù),i=2循環(huán)條件:i<=Math.sqrt(num)循環(huán)體:判斷(num%i==0)是否成立,如果成立,終止循環(huán)。如果不成立,繼續(xù)判斷下一個數(shù)使循環(huán)趨于結(jié)束的語句:i++第二步:識別程序中的輸入、處理和輸出程序的輸入:一個正整數(shù)任務(wù)實施任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1程序要用到的變量:需要保存的數(shù)據(jù)數(shù)據(jù)類型變量名初值正整數(shù)intnum鍵盤輸入循環(huán)變量inti2處理:
判斷num是否是素數(shù)
程序的輸出:num是素數(shù)或者num不是素數(shù)任務(wù)實施任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1第三步:算法設(shè)計判斷一個數(shù)num是否是素數(shù),如果num的值為1,num不是素數(shù),如果num的值為2,num是素數(shù),如果num>2,判斷[2,sqrt(num)]中是否有num的因子,如果有num不是素數(shù),否則num是素數(shù)。算法設(shè)計掃碼查看。第四步:編碼實現(xiàn)第五步:運行和調(diào)試程序第六步:驗證程序運行結(jié)果AEBCD小組協(xié)作,完成任務(wù)評價測試任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1評價指標評價標準分值得分創(chuàng)建項目正確創(chuàng)建Java項目10
輸入正確輸入一個整數(shù),用戶界面友好10
處理正確判斷一個正整數(shù)是否是質(zhì)數(shù)30
輸出結(jié)果正確輸出結(jié)果30
編碼規(guī)范變量命名規(guī)范、有合理的注釋20
拓展提升——直接訪問Math中的方法和常量任務(wù)5.1用while實現(xiàn)判斷一個數(shù)是否質(zhì)數(shù)1Math類中提供的方法和常量都是staitc的,訪問時通過加Math類名來訪問,比如Math.PI,Math.sqrt()。如果不想在數(shù)學方法和常量名前加Math,只需要在源文件上方加上這樣一句:importstaticjava.lang.Math.*;任務(wù)描述任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2本任務(wù)要求:用do...while語句結(jié)構(gòu)實現(xiàn),用戶可以從鍵盤輸入英文單詞,輸入后能看到所輸入單詞的長度,每次操作完根據(jù)提示選擇“繼續(xù)輸入”還是“退出操作”,如果輸入“y”則繼續(xù)單詞的輸入與求長度過程,若輸入“n”則結(jié)束單詞的輸入操作。具體任務(wù)任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2技能點1:用do...while語句實現(xiàn)循環(huán)語法:do{循環(huán)體}while(循環(huán)條件);技術(shù)準備執(zhí)行流程:(1)先執(zhí)行循環(huán)體
(2)再判斷循環(huán)條件,如果循環(huán)條件為true,轉(zhuǎn)到(1)執(zhí)行,如果循環(huán)條件為false,循環(huán)結(jié)束,執(zhí)行do...while語句的下一條語句。do...while語句執(zhí)行流程任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2案例:用do...while計算1到100的累加和教師演示第一步:任務(wù)分析循環(huán)的四個要素:(1)循環(huán)變量及初始化intsum=0,num=1;(2)循環(huán)條件num<=100(3)循環(huán)體sum+=num;(4)使循環(huán)趨于結(jié)束的語句num++;
第二步:算法設(shè)計第三步:編碼實現(xiàn)第四步:運行并查看結(jié)果技能點2:while和do...while的區(qū)別任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2while語句是先判斷條件再執(zhí)行循環(huán)體,有可能一次也不執(zhí)行循環(huán)體;do...while語句先執(zhí)行循環(huán)體,再判斷條件,至少要執(zhí)行一次循環(huán)體。技術(shù)準備publicstaticvoidmain(String[]args){intsum=0,num;Scannerinput=newScanner(System.in);
System.out.println("請輸入一個整數(shù):");num=input.nextInt();while(num<=10){sum+=num;num++;}System.out.println("sum="+sum);}publicstaticvoidmain(String[]args){intsum=0,num;Scannerinput=newScanner(System.in);
System.out.println("請輸入一個整數(shù):");num=input.nextInt();do{sum+=num;num++;}while(num<=10);System.out.println("sum="+sum);}當輸入整數(shù)為20時,程序運行結(jié)果分別是:
、
。任務(wù)實施任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2第一步:任務(wù)分析確定循環(huán)的四個要素:(1)循環(huán)變量及初始化:charchoice;Stringwords;(2)循環(huán)條件:choice==’y’;(3)循環(huán)體:words=input.nextLine();計算并輸出長度words.length()(4)使循環(huán)趨于結(jié)束的語句:重新輸入,為choice賦值第二步:算法設(shè)計第三步:編碼實現(xiàn)第四步:運行和調(diào)試程序第五步:驗證程序運行結(jié)果AEBCD小組協(xié)作,完成任務(wù)評價測試任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2評價指標評價標準分值得分創(chuàng)建項目正確創(chuàng)建Java項目10
輸入正確輸入一個字符串,用戶界面友好10
處理正確輸出字符串的長度,30
輸出結(jié)果正確輸出結(jié)果30
編碼規(guī)范變量命名規(guī)范、有合理的注釋20
拓展提升——創(chuàng)建和操作可變長字符串任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2“+”運算符可以實現(xiàn)字符串的拼接,JDK11之后的String類中提供的repeat(intcount)方法可以將當前字符串重復(fù)count次后返回。但由于String類定義的字符串是不能被修改的,每次拼接字符串時,都會構(gòu)建一個新的String對象,既耗時,又浪費空間。如果要對字符串進行頻繁的修改,建議使用StringBuffer類或者StringBuilder類,StringBuffer效率不如StringBuilder,不過它允許采用多線程的方式修改字符串。如果字符串的操作是在單線程中執(zhí)行,建議使用StringBuilder,這兩個類的方法是類似的。拓展提升——創(chuàng)建和操作可變長字符串任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2StringBuilder類常用的方法有:StringBuilder():創(chuàng)建一個空的StringBuilder對象。StringBuilder(Stringstr):創(chuàng)建一個包含指定字符串的StringBuilder對象。append(Objectobj):在StringBuilder的末尾追加指定對象的內(nèi)容。insert(intindex,Objectobj):在指定位置插入指定對象的內(nèi)容。delete(intstart,intend):刪除從start位置到end-1位置的字符。reverse():反轉(zhuǎn)StringBuilder中的字符。length():返回StringBuilder中字符的數(shù)量。toString():將StringBuilder轉(zhuǎn)換為String。拓展提升——JDK15新特性:文本塊任務(wù)5.2用do...while實現(xiàn)計算多個單詞長度2JDK15中新增了文本塊特性,可以更簡潔地表示多行的字符串常量。文本塊以"""開頭,后面是一個換行符,并以"""結(jié)束。比如:Stringstr2="""HelloWorld""";該字符串等價于:Stringstr2="Hello\nWorld\n";任務(wù)描述任務(wù)5.3用for語句實現(xiàn)輸出鉆石圖案3本任務(wù)要求:編程實現(xiàn),鍵盤輸入一個奇數(shù)n,輸出n行的鉆石圖案具體任務(wù)
*
***
*****
*******
*****
***
*
任務(wù)5.3用for語句實現(xiàn)輸出鉆石圖案3技能點1:用for語句實現(xiàn)循環(huán)語法:for([循環(huán)變量賦初值];[循環(huán)條件];[修改循環(huán)變量])
循環(huán)體執(zhí)行流程:
(1)先求解表達式1。(2)再求解表達式2,若其值為true,則執(zhí)行循環(huán)體,然后執(zhí)行下面第(3)步;若其值為false,則結(jié)束循環(huán),轉(zhuǎn)到第(5)步。(3)求解表達式3。(4)轉(zhuǎn)回上面第(2)步繼續(xù)執(zhí)行。(5)循環(huán)結(jié)束,執(zhí)行for語句下面的語句。技術(shù)準備for語句執(zhí)行流程任務(wù)5.3用for語句實現(xiàn)輸出鉆石圖案3案例:設(shè)計并實現(xiàn)一程序,要求用for循環(huán)結(jié)構(gòu)求出1-100之間所有偶數(shù)之和教師演示第一步:任務(wù)分析寫出循環(huán)的四個要素:(1)循環(huán)變量及初始化inti=1,sum=0;(2)循環(huán)條件i<=100(3)循環(huán)體if(i%2==0)sum=sum+i;(4)使循環(huán)趨于結(jié)束的語句i++
第二步:算法設(shè)計第三步:編碼實現(xiàn)第四步:運行并查看結(jié)果任務(wù)5.3用for語句實現(xiàn)輸出鉆石圖案3技能點2:用break和continue控制程序執(zhí)行流程1.break語句,可以終止switch語句和循環(huán)語句的執(zhí)行。2.continue語句,只能出現(xiàn)循環(huán)體里,它的作用是結(jié)束本次循環(huán),進入下一次循環(huán)(不執(zhí)行continue之后的循環(huán)體語句,進入下一次循環(huán))技術(shù)準備inti,sum=0;for(i=2;i<100;){sum+=i;if(i>50)break;i=i+2; }System.out.println("sum="+sum);inti=1;for(;i<=20;i++){System.out.printf("%d\t",i);
//如果i不是5的倍數(shù),結(jié)束本次循環(huán)
if(i%5!=0)continue;System.out.println();//換行}實例:下列代碼實現(xiàn)輸出1到20數(shù),每輸出5個數(shù)后換行實例:實現(xiàn)計算[2,50]之間的偶數(shù)之和技能點3:循環(huán)嵌套任務(wù)5.3用for語句實現(xiàn)輸出鉆石圖案3一個循環(huán)體中包含有另一個循環(huán),成為循環(huán)的嵌套。外層循環(huán)每執(zhí)行一次,內(nèi)層循環(huán)會執(zhí)行完整個循環(huán)。技術(shù)準備案例:編程實現(xiàn)輸出5行,每行10個星號教師演示第一步:任務(wù)分析第三步:編碼實現(xiàn)第四步:運行程序任務(wù)5.3用for語句實現(xiàn)輸出鉆石圖案3案例:編程實現(xiàn)輸出100以內(nèi)所有的素數(shù)教師演示第一步:任務(wù)分析第三步:編碼實現(xiàn)第四步:運行程序循環(huán)的初始條件循環(huán)條件循環(huán)體使循環(huán)趨于結(jié)束的語句外層循環(huán)inti=3i<=100內(nèi)層循環(huán)i++內(nèi)層循環(huán)intj=2j<=sqrt(i)判斷i%j==0j++任務(wù)實施任務(wù)5.3用for語句實現(xiàn)輸出鉆石圖案3第一步:任務(wù)分析7行的鉆石圖案如圖所示。共有l(wèi)ines=7行,每行由不同數(shù)量的空格和星號組成。對稱圖形,行號n可以從[-3,3]表示,分析行、空格數(shù)和星號數(shù)的關(guān)系,找出這三者之間的關(guān)系,經(jīng)過分析得出三者之間的關(guān)系。行(n)空格數(shù)(sp
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學年高中化學第二章化學反應(yīng)與能量第二節(jié)化學能與電能1化學能與電能的相互轉(zhuǎn)化課時訓練含解析新人教版必修2
- 2024-2025學年高中語文2雷雨習題含解析新人教版必修4
- 2024-2025學年高中生物第1章無菌操作技術(shù)實踐第3節(jié)植物組織培養(yǎng)技術(shù)學案蘇教版選修1
- 2025年中國絕緣鞋行業(yè)發(fā)展趨勢及投資前景預(yù)測報告
- 2025年鑰匙扣民族陶娃行業(yè)深度研究分析報告
- 2025年中國LED照明市場運行態(tài)勢研究報告
- 乙基麥芽酚項目可行性研究報告
- 2024年事故報告、調(diào)查處理和統(tǒng)計制度(三)
- 2025年雙向紗門行業(yè)深度研究分析報告
- 2025年中國良性前列腺增生藥物行業(yè)發(fā)展前景及投資戰(zhàn)略咨詢報告
- ××管業(yè)分銷市場操作方案
- 《ISO 41001-2018 設(shè)施管理- 管理體系 要求及使用指南》專業(yè)解讀與應(yīng)用指導材料之15:“7支持-7.6 組織知識”(雷澤佳編制-2024)
- 2024年建設(shè)工程質(zhì)量檢測人員-建設(shè)工程質(zhì)量檢測人員(主體結(jié)構(gòu)工程)考試近5年真題集錦(頻考類試題)帶答案
- 《向量共線定理》同步課件
- 小學數(shù)學學習經(jīng)驗交流課件
- 2024年第二批政府專職消防員招錄報名表
- 注塑模具基礎(chǔ)知識
- 2024年單招考試題
- 三年級數(shù)學下冊期末測試卷及答案【可打印】
- 蘇教版小學語文上冊教學研究論文
- 片狀鋅粉行業(yè)分析!中國片狀鋅粉行業(yè)市場發(fā)展前景研究報告(2024版)
評論
0/150
提交評論