算法案例4 詳細版課件_第1頁
算法案例4 詳細版課件_第2頁
算法案例4 詳細版課件_第3頁
算法案例4 詳細版課件_第4頁
算法案例4 詳細版課件_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1.3 算法案例 第四課時 k進制化十進制 復(fù)習(xí)提問 1.“滿幾進一”就是幾進制,k進制使用哪幾個數(shù)字,k進制數(shù)化為十進制數(shù)的一般算式是什么?2.k進制數(shù)化為十進制數(shù)的算法: 把k進制數(shù) a=anan-1a1(k) 化為十進制數(shù)b的算法步驟如何設(shè)計?第四步,判斷in 是否成立.若是,則輸出b的值;否則,返回第三步.第一步,輸入a,k和n的值.第二步,令b=0,i=1.第三步, ,i=i+1.結(jié)束3.上述把k進制數(shù) 化為十進制數(shù)b的算法的程序框圖如何表示? 開始輸入a,k,nb=0i=1把a的右數(shù)第i位數(shù)字賦給tb=b+tki-1i=i+1in?是輸出b否結(jié)束思考6:該程序框圖對應(yīng)的程序如何表述

2、?開始輸入a,k,nb=0i=1把a的右數(shù)第i位數(shù)字賦給tb=b+tki-1i=i+1in?是輸出b否INPUT a,k,nb=0i=1t=a MOD 10DOb=b+t*k(i-1)a=a10t=a MOD 10i=i+1LOOP UNTIL inPRINT bEND 例1 將下列各進制數(shù)化為十進制數(shù).(1)10303(4) ; (2)1234(5).理論遷移10303(4)=144+342+340=307.1234(5)=153+252+351+450=194. 例2 已知10b1(2)=a02(3),求數(shù)字a,b的值.所以2b+9=9a+2,即9a-2b=7. 10b1(2)=123+b

3、2+1=2b+9.a02(3)=a32+2=9a+2.故a=1,b=1. 十進制化k進制例1:把89化為二進制的數(shù).分析:把89化為二進制的數(shù),需想辦法將89先寫成如下形式89=an2n+an-12n-1+a121+a020 .89=64+16+8+1=126+025+124 +123+022+021+120 =1011001(2)但如果數(shù)太大,我們是無法這樣湊出來的,怎么辦?89=442+1, 44=222+0, 22=112+0, 11=52+1, 5=22+1, 2=12+0, 1=02+1, 89=442+1, 44=222+0, 22=112+0, 11=52+1, 5=22+1,

4、89=442+1, =(222+0)2+1 =(112+0)2+0)2+1 =(52+1)2+0)2+0)2+1 =(22+1)2+1)2+0) 2+0)2+1 =(12)+0)2+1)2+1)2+0) 2+0)2+1=126+025+124 +123+022+021+120=1011001(2)可以用2連續(xù)去除89或所得商(一直到商為0為止),然后取余數(shù)-除2取余法.2=12+0, 1=02+1, 44 1我們可以用下面的除法算式表示除2取余法:289 余數(shù)222 0211 025 122 121 020 1把算式中各步所得的余數(shù)從下到上排列,得到89=1011001(2).這種方法也可以推

5、廣為把十進制數(shù)化為k進制數(shù)的算法,稱為除k取余法.知識探究(一):除k取余法練習(xí):十進制數(shù)191化為五進制數(shù)是什么數(shù)?0515753851911321余數(shù)191=1231(5)思考:若十進制數(shù)a除以2所得的商是q0,余數(shù)是r0, 即a=2q0+ r0;q0除以2所得的商是q1,余數(shù)是r1, 即q0=2q1+ r1; qn-1除以2所得的商是0,余數(shù)是rn, 即qn-1= rn,那么十進制數(shù)a化為二進制數(shù)是什么數(shù)?a =rnrn-1r1r0(2)知識探究(二):十進制化k進制的算法 思考1:根據(jù)上面的分析,將十進制數(shù)a化為二進制數(shù)的算法步驟如何設(shè)計?第二步,求出a除以2所得的商q,余數(shù)r.第一步

6、,給定十進制正整數(shù)a.第三步,若q0, 則a=q, 返回第二 步;否則,執(zhí)行第四步;第四步,將依次得到的余數(shù)從右到左排 列,得到二進制數(shù)。思考2:利用除k取余法,將十進制數(shù)a化為k進制數(shù)的算法步驟如何設(shè)計?第四步,若q0,則a=q,返回第二步; 否則,輸出全部余數(shù)r排列得到 的k進制數(shù).第一步,輸入十進制數(shù)a和基數(shù)k的值.第二步,求出a除以k所得的商q,余數(shù)r.第三步,把所得的余數(shù)依次從右到左排 列.思考3: 將除k取余法的算法步驟用程序框圖如何表示? 開始輸入a,k求a除以k的商q求a除以k的余數(shù)r把所得的余數(shù)依次從右到左排列a=qq=0?結(jié)束輸出全部余數(shù)r排列得到的k進制數(shù)是否思考4:該程

7、序框圖對應(yīng)的程序如何表述?開始輸入a,k求a除以k的商q求a除以k的余數(shù)r把所得的余數(shù)依次從右到左排列a=qq=0?結(jié)束輸出全部余數(shù)r排列得到的k進制數(shù)是否INPUT a,kb=0i=0DOq=akr=a MOD kb=b+r*10ii=i+1a=qLOOP UNTIL q=0PRINT bEND理論遷移 例1 將十進制數(shù)458分別轉(zhuǎn)化為四進制數(shù)和六進制數(shù).041474284114445822031余數(shù)06261267664582402余數(shù)458=13022(4)=2042(6) 例2 將五進制數(shù)30241(5)轉(zhuǎn)化為七進制數(shù). 30241(5)=354+252+45+1=1946. 0757

8、397278719460545余數(shù)30241(5)=5450(7) 本節(jié)小結(jié) 1.利用除k取余法,可以把任何一個十進制數(shù)化為k進制數(shù),并且操作簡單、實用. 2.通過k進制數(shù)與十進制數(shù)的轉(zhuǎn)化,我們也可以將一個k進制數(shù)轉(zhuǎn)化為另一個不同基數(shù)的k進制數(shù).1.設(shè)函數(shù)f(x)=x3-2x2-5x+8,則f(9)的值( ) A.492 B.530 C.542 D.5282.將二進制數(shù)10000001轉(zhuǎn)化為十進制數(shù)是( )A.127 B.129 C.126 D.1283.兩個整數(shù)490和910的最大公約數(shù)是( )A.2 B.10 C.30 D. 70 BBD練習(xí)4在二進制數(shù)中10111.01 可表示為:101

9、11.01=124+023+122121+120+02-1+12-2=練習(xí)5. 閱讀下列程序:若輸入的兩個數(shù)m=428,n=284,求計算機輸出的數(shù)是幾?INPUT m,nDOr=m MOD nm=nn=rLOOP UNTIL r=0PRINT mEND4練習(xí)7.把八進制數(shù)2376(8)化為五進制數(shù).2376(8)=1278=20103(5)練習(xí)6 把十進制數(shù)104化為三進制數(shù).104=10212(3)練習(xí)8.求324,243,270三個數(shù)的最大公約數(shù). 27練習(xí)9. 已知f(x)=8x7+5x6+3x4+2x+1,用秦九韶算法求f(2)的值.f(x)=(8x+5)x+0)x+3)x+0)x+0)x+2)x+1f(2)=1397 例3 在等式 36528=3 8256中,方框內(nèi)是同一個一位數(shù),編寫一個程序,判斷該數(shù)是否存在,若存在,輸出x的值.AB?輸出xb=30+xa=10 x+3x=1開始A=a6

溫馨提示

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

評論

0/150

提交評論