簡(jiǎn)單算法及其程序?qū)崿F(xiàn)(課件)(共16張PPT)-高一信息技術(shù)同步精品課堂(浙教2019版必修1)_第1頁
簡(jiǎn)單算法及其程序?qū)崿F(xiàn)(課件)(共16張PPT)-高一信息技術(shù)同步精品課堂(浙教2019版必修1)_第2頁
簡(jiǎn)單算法及其程序?qū)崿F(xiàn)(課件)(共16張PPT)-高一信息技術(shù)同步精品課堂(浙教2019版必修1)_第3頁
簡(jiǎn)單算法及其程序?qū)崿F(xiàn)(課件)(共16張PPT)-高一信息技術(shù)同步精品課堂(浙教2019版必修1)_第4頁
簡(jiǎn)單算法及其程序?qū)崿F(xiàn)(課件)(共16張PPT)-高一信息技術(shù)同步精品課堂(浙教2019版必修1)_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第3章算法的程序?qū)崿F(xiàn)浙教版

信息技術(shù)(高中)必修1

數(shù)據(jù)與計(jì)算3.3簡(jiǎn)單算法及其程序?qū)崿F(xiàn)

學(xué)習(xí)目標(biāo)123解析算法及其程序?qū)崿F(xiàn)。枚舉算法及其程序?qū)崿F(xiàn)。算法程序?qū)崿F(xiàn)的綜合應(yīng)用。12重點(diǎn)難點(diǎn)重點(diǎn):算法程序?qū)崿F(xiàn)的綜合應(yīng)用。難點(diǎn):算法程序?qū)崿F(xiàn)的綜合應(yīng)用。課堂導(dǎo)入

算法設(shè)計(jì)完成后,就可以用程序設(shè)計(jì)語言來描述算法,本節(jié)介紹如何使用python程序設(shè)計(jì)語言來描述一些簡(jiǎn)單算法。3.3.1解析算法及其程序?qū)崿F(xiàn)答題卡填涂識(shí)別(1)抽象與建?;叶戎?0.299x紅色顏色分量+0.587x綠色顏色分量+0.114x藍(lán)色顏色分量(3)編寫程序(2)設(shè)計(jì)算法①給定顏色初值:輸入某像素在RGB顏色模式下的各顏色分量。②轉(zhuǎn)換顏色模式:將彩色(RGB顏色模式)值轉(zhuǎn)化成灰度值。③判定黑、白顏色:若灰度值小于132,則判定為黑色;否則判定為白色。3.3.2枚舉算法及其程序?qū)崿F(xiàn)例如,求解某整數(shù)x的所有因子(不包含x本身)。判定某信息點(diǎn)是否被填涂,還需要對(duì)該信息點(diǎn)區(qū)域中的所有像素進(jìn)行判斷。(1)抽象與建模(2)設(shè)計(jì)算法(3)編寫程序①逐一列舉某信息點(diǎn)中的各個(gè)像素。②如果當(dāng)前枚舉的像素是黑色,那么黑色像素的數(shù)量加1。③輸出該信息點(diǎn)中黑色像素總數(shù)。count=Σsi

,si={ni=10(Gray_scale[i]≥132

1(Gray_scale[i]<132)

對(duì)300個(gè)像素的顏色數(shù)據(jù)逐一進(jìn)行列舉并判斷。fname=input("請(qǐng)輸入文件名稱:")f=open(fname,"r+")count=0line=f.readline0()whileline:line=line.split()R,G,B=map(int,line)if0.299*R+0.587*G+0.144*B<132:count=count+1line=f.readline()ifcount>=300*0.64:

f.write("\n已填涂?。ⅲ〆lse:f.write("\n未填涂!”)f.close()拓展鏈接:Python的文件讀寫操作讀寫文件是計(jì)算機(jī)中常見的輸入輸出操作,讀寫文件時(shí)會(huì)請(qǐng)求操作系統(tǒng)打開一個(gè)文件對(duì)象,然后通過操作系統(tǒng)提供的接口從這個(gè)文件對(duì)象中讀取數(shù)據(jù)(讀文件),或者把數(shù)據(jù)寫入這個(gè)文件對(duì)象(寫文件)。Python內(nèi)置了讀寫文件的函數(shù)。讀文件時(shí),可以使用內(nèi)置的open0函數(shù)打開由參數(shù)指定的文件對(duì)象,并通過參數(shù)指定打開方式。如:>>>f=open(test.txr',r)上述命令的作用是以讀文件模式(參數(shù)丫)打開文件test.txt,如果文件打開成功,可以用read()方法將文件中的全部內(nèi)容讀取到內(nèi)存。如果文件test.txt內(nèi)容為“Hello,world!”,那么命令的執(zhí)行結(jié)果為:>>>f.readO>>>'Hello,world!'由于調(diào)用read()會(huì)一次性讀取文件的全部內(nèi)容,為避免讀取文件過大,可采用多次調(diào)用read(size)方法,每次最多讀取size個(gè)字節(jié)的內(nèi)容。另外,調(diào)用readline()可以每次讀取一行內(nèi)容,并按行返回list.因此,可根據(jù)實(shí)際需要靈活調(diào)用read()方法。如果文件很小,read()一次性讀取比較方便;如果不能確定文件大小,反復(fù)調(diào)用read(size)比較安全;如果是配置文件,調(diào)用readlines()最方便。如:forlineinf.readlines():print(line.strip0)文件使用完畢后必須關(guān)閉。關(guān)閉文件的方法如下:>>>f.close0調(diào)用open()函數(shù)寫文件時(shí),用參數(shù)'w'表示寫文本文件模式;'r+'模式則表示在打開一個(gè)文本文件時(shí)同時(shí)允許讀和寫。例如,將“Hello,world!”寫入test.txt,可使用下列命令:>>>f=open('test.txt','w)>>>f.write(Hello,world!')>>>f.close()問題與討論:請(qǐng)結(jié)合枚舉算法的學(xué)習(xí)經(jīng)歷,談?wù)劽杜e算法的一般程序結(jié)構(gòu)特點(diǎn)。3.3.3算法程序?qū)崿F(xiàn)的綜合應(yīng)用創(chuàng)建函數(shù)bw_judge,能夠根據(jù)彩色像素的RGB三種顏色分量值,通過計(jì)算進(jìn)而識(shí)別該像素的顏色情況。defbw_judge(R,G,B):Gray_scale=0.299*R+0.587*G+0.114*BifGray_scale<132: color="黑色”else: color="白色"returncolorfromPILimportImageim=Image.open("RGB.bmp")pix=im.load0width=im.size[0]height=im.size[1]count=0forxinrange(width):foryinrange(height):R,G,B=pix[x,y]ifbw_judge(R,G,B)=="黑色":count=count+1ifcount>=width*height*0.64:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論