歡迎來(lái)到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁(yè) 裝配圖網(wǎng) > 資源分類(lèi) > DOC文檔下載  

2019-2020年高中信息技術(shù) 全國(guó)青少年奧林匹克聯(lián)賽教案 多精度數(shù)值處理.doc

  • 資源ID:2553679       資源大?。?span id="ihhdtor" class="font-tahoma">30KB        全文頁(yè)數(shù):5頁(yè)
  • 資源格式: DOC        下載積分:9.9積分
快捷下載 游客一鍵下載
會(huì)員登錄下載
微信登錄下載
三方登錄下載: 微信開(kāi)放平臺(tái)登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機(jī):
溫馨提示:
用戶(hù)名和密碼都是您填寫(xiě)的郵箱或者手機(jī)號(hào),方便查詢(xún)和重復(fù)下載(系統(tǒng)自動(dòng)生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號(hào):
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會(huì)被瀏覽器默認(rèn)打開(kāi),此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁(yè)到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請(qǐng)使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無(wú)水印,預(yù)覽文檔經(jīng)過(guò)壓縮,下載后原文更清晰。
5、試題試卷類(lèi)文檔,如果標(biāo)題沒(méi)有明確說(shuō)明有答案則都視為沒(méi)有答案,請(qǐng)知曉。

2019-2020年高中信息技術(shù) 全國(guó)青少年奧林匹克聯(lián)賽教案 多精度數(shù)值處理.doc

2019-2020年高中信息技術(shù) 全國(guó)青少年奧林匹克聯(lián)賽教案 多精度數(shù)值處理課題:多精度數(shù)值的處理目標(biāo):知識(shí)目標(biāo):多精度值的加、減、乘、除能力目標(biāo):多精度值的處理,優(yōu)化!重點(diǎn):多精度的加、減、乘難點(diǎn):進(jìn)位與借位處理板書(shū)示意:1) 輸入兩個(gè)正整數(shù),求它們的和2) 輸入兩個(gè)正整數(shù),求它們的差3) 輸入兩個(gè)正整數(shù),求它們的積4) 輸入兩個(gè)正整數(shù),求它們的商授課過(guò)程:所謂多精度值處理,就是在對(duì)給定的數(shù)據(jù)范圍,用語(yǔ)言本身提供的數(shù)據(jù)類(lèi)型無(wú)法直接進(jìn)行處理(主要指加減乘除運(yùn)算),而需要采用特殊的處理辦法進(jìn)行??纯聪旅娴睦?。例1 從鍵盤(pán)讀入兩個(gè)正整數(shù),求它們的和。分析:從鍵盤(pán)讀入兩個(gè)數(shù)到兩個(gè)變量中,然后用賦值語(yǔ)句求它們的和,輸出。但是,我們知道,在pascal語(yǔ)言中任何數(shù)據(jù)類(lèi)型都有一定的表示范圍。而當(dāng)兩個(gè)被加數(shù)據(jù)大時(shí),上述算法顯然不能求出精確解,因此我們需要尋求另外一種方法。在讀小學(xué)時(shí),我們做加法都采用豎式方法,如圖1。這樣,我們方便寫(xiě)出兩個(gè)整數(shù)相加的算法。 8 5 6 + 2 5 5 1 1 1 1 圖1 A3 A2 A1+ B3 B2 B1 C4 C3 C2 C1 圖2如果我們用數(shù)組A、B分別存儲(chǔ)加數(shù)和被加數(shù),用數(shù)組C存儲(chǔ)結(jié)果。則上例有A1=6, A2=5, A3=8, B1=5,B2=5, B3=2, C4=1,C3=1, C2=1,C1=1,兩數(shù)相加如圖2所示。由上圖可以看出:Ci:= Ai+Bi;if Ci>10 then begin Ci:= Ci mod 10; Ci+1:= Ci+1+1 end;因此,算法描述如下:procedure add(a,b;var c); a,b,c都為數(shù)組,a存儲(chǔ)被加數(shù),b存儲(chǔ)加數(shù),c存儲(chǔ)結(jié)果 var i,x:integer;begin i:=1 while (i<=a數(shù)組長(zhǎng)度>0) or(i<=b數(shù)組的長(zhǎng)度) do beginx := ai + bi + x div 10; 第i位相加并加上次的進(jìn)位ci := x mod 10; 存儲(chǔ)第i位的值i := i + 1 位置指針變量 endend;通常,讀入的兩個(gè)整數(shù)用可用字符串來(lái)存儲(chǔ),程序設(shè)計(jì)如下:program exam1;const max=200; var a,b,c:array1.max of 0.9;n:string; lena,lenb,lenc,i,x:integer;begin write(Input augend:); readln(n); lena:=length(n); 加數(shù)放入a數(shù)組 for i:=1 to lena do alena-i+1:=ord(ni)-ord(0); write(Input addend:); readln(n); lenb:=length(n); 被加數(shù)放入b數(shù)組 for i:=1 to lenb do blenb-i+1:=ord(ni)-ord(0); i:=1; while (i<=lena) or(i<=lenb) do begin x := ai + bi + x div 10; 兩數(shù)相加,然后加前次進(jìn)位 ci := x mod 10; 保存第i位的值 i := i + 1 end; if x>=10 then 處理最高進(jìn)位begin lenc:=i;ci:=1 end else lenc:=i-1; for i:=lenc downto 1 do write(ci); 輸出結(jié)果 writelnend.例2 高精度減法。從鍵盤(pán)讀入兩個(gè)正整數(shù),求它們的差。分析:類(lèi)似加法,可以用豎式求減法。在做減法運(yùn)算時(shí),需要注意的是:被減數(shù)必須比減數(shù)大,同時(shí)需要處理借位。因此,可以寫(xiě)出如下關(guān)系式if ai<bi then begin ai+1:=ai+1-1;ai:=ai+10 endci:=ai-bi類(lèi)似,高精度減法的參考程序:program exam2;const max=200; var a,b,c:array1.max of 0.9; n,n1,n2:string; lena,lenb,lenc,i,x:integer;begin write(Input minuend:); readln(n1); write(Input subtrahend:); readln(n2); 處理被減數(shù)和減數(shù) if (length(n1)<length(n2) or (length(n1)=length(n2) and (n1<n2) then begin n:=n1;n1:=n2;n2:=n; write(-) n1<n2,結(jié)果為負(fù)數(shù) end; lena:=length(n1); lenb:=length(n2); for i:=1 to lena do alena-i+1:=ord(n1i)-ord(0); for i:=1 to lenb do blenb-i+1:=ord(n2i)-ord(0); i:=1; while (i<=lena) or(i<=lenb) do begin x := ai - bi + 10 + x; 不考慮大小問(wèn)題,先往高位借10 ci := x mod 10 ; 保存第i位的值 x := x div 10 - 1; 將高位借掉的1減去 i := i + 1 end; lenc:=i; while (clenc=0) and (lenc>1) do dec(lenc); 最高位的0不輸出 for i:=lenc downto 1 do write(ci); writelnend.例3 高精度乘法。從鍵盤(pán)讀入兩個(gè)正整數(shù),求它們的積。分析:類(lèi)似加法,可以用豎式求乘法。在做乘法運(yùn)算時(shí),同樣也有進(jìn)位,同時(shí)對(duì)每一位進(jìn)乘法運(yùn)算時(shí),必須進(jìn)行錯(cuò)位相加,如圖3, 圖4。 8 5 6 2 5 4 2 8 0 1 7 1 2 2 1 4 0 0 圖3A 3 A 2 A 1 B 3 B 2 B 1 C4C3 C2 C1 C”5C”4C”3C”2 C 6 C 5 C 4 C 3 C 2 C 1 圖4分析C數(shù)組下標(biāo)的變化規(guī)律,可以寫(xiě)出如下關(guān)系式C i = C i +C ”i +由此可見(jiàn),C i跟Ai*Bj乘積有關(guān),跟上次的進(jìn)位有關(guān),還跟原C i的值有關(guān),分析下標(biāo)規(guī)律,有x:= Ai*Bj+ x DIV 10+ Ci+j-1;Ci+j-1 := x mod 10; 類(lèi)似,高精度乘法的參考程序:program exam3;const max=200;var a,b,c:array1.max of 0.9; n1,n2:string; lena,lenb,lenc,i,j,x:integer;begin write(Input multiplier:); readln(n1); write(Input multiplicand:); readln(n2); lena:=length(n1); lenb:=length(n2); for i:=1 to lena do alena-i+1:=ord(n1i)-ord(0); for i:=1 to lenb do blenb-i+1:=ord(n2i)-ord(0); for i:=1 to lena do begin x:=0; for j:=1 to lenb do begin 對(duì)乘數(shù)的每一位進(jìn)行處理 x := ai*bj + x div 10 + ci+j-1; 當(dāng)前乘積+上次乘積進(jìn)位+原數(shù) ci+j-1 := x mod 10; end; ci+j:= x div 10; 進(jìn)位 end; lenc:=i+j; while (clenc=0) and (lenc>1) do dec(lenc); for i:=lenc downto 1 do write(ci); writelnend.例 高精度除法。從鍵盤(pán)讀入兩個(gè)正整數(shù),求它們的商(做整除)。分析:做除法時(shí),每一次上商的值都在,每次求得的余數(shù)連接以后的若干位得到新的被除數(shù),繼續(xù)做除法。因此,在做高精度除法時(shí),要涉及到乘法運(yùn)算和減法運(yùn)算,還有移位處理。當(dāng)然,為了程序簡(jiǎn)潔,可以避免高精度乘法,用09次循環(huán)減法取代得到商的值。這里,我們討論一下高精度數(shù)除以單精度數(shù)的結(jié)果,采取的方法是按位相除法。參考程序:program exam4;const max=200;var a,c:array1.max of 0.9; x,b:longint; n1,n2:string; lena:integer; code,i,j:integer;begin write(Input dividend:); readln(n1); write(Input divisor:); readln(n2); lena:=length(n1); for i:=1 to lena do ai := ord(n1i) - ord(0); val(n2,b,code); 按位相除 x:=0; for i:=1 to lena do begin ci:=(x*10+ai) div b; x:=(x*10+ai) mod b; end; 顯示商 j:=1; while (cj=0) and (j<lena) do inc(j); 去除高位的0 for i:=j to lena do write(ci) ; writelnend.實(shí)質(zhì)上,在做兩個(gè)高精度運(yùn)算時(shí)候,存儲(chǔ)高精度數(shù)的數(shù)組元素可以不僅僅只保留一個(gè)數(shù)字,而采取保留多位數(shù)(例如一個(gè)整型或長(zhǎng)整型數(shù)據(jù)等),這樣,在做運(yùn)算(特別是乘法運(yùn)算)時(shí),可以減少很多操作次數(shù)。例如圖5就是采用4位保存的除法運(yùn)算,其他運(yùn)算也類(lèi)似。具體程序可以修改上述例題予以解決,程序請(qǐng)讀者完成。

注意事項(xiàng)

本文(2019-2020年高中信息技術(shù) 全國(guó)青少年奧林匹克聯(lián)賽教案 多精度數(shù)值處理.doc)為本站會(huì)員(tian****1990)主動(dòng)上傳,裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請(qǐng)重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話(huà):18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!