計算機(jī)課程設(shè)計基于EXCEL VBA的Lagrang插值程序設(shè)計_第1頁
計算機(jī)課程設(shè)計基于EXCEL VBA的Lagrang插值程序設(shè)計_第2頁
計算機(jī)課程設(shè)計基于EXCEL VBA的Lagrang插值程序設(shè)計_第3頁
計算機(jī)課程設(shè)計基于EXCEL VBA的Lagrang插值程序設(shè)計_第4頁
計算機(jī)課程設(shè)計基于EXCEL VBA的Lagrang插值程序設(shè)計_第5頁
已閱讀5頁,還剩11頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 基于基于 excelexcel vbavba 的的 lagranglagrang 插值程序設(shè)計插值程序設(shè)計 學(xué)生姓名: 班級:08081103 指導(dǎo)老師: 摘要:excel 是 microsoft office 家族成員,是 windows 環(huán)境下應(yīng)用最廣泛的軟件之 一。是一個功能強(qiáng)大、技術(shù)先進(jìn)、使用方便的表格式數(shù)據(jù)綜合管理和分析系統(tǒng)。它向 用戶提供了史無前例的、超強(qiáng)的計算功能及表格功能。它采用電子表格方式進(jìn)行數(shù)據(jù) 處理,操作直觀方便;它提供了豐富的函數(shù),可以進(jìn)行各種數(shù)據(jù)處理、統(tǒng)計分析。此 外,excel 的強(qiáng)大功能還在于它提供的宏語言 visual bas

2、ic for application(簡稱 vba) ,為廣大用戶提供了一個新的、更高層次的二次開發(fā)平臺。 本文介紹一種基于 excel 內(nèi)核的 vba 編程方法,來擴(kuò)展 excel 的功能,以實現(xiàn) lagrang 插值函數(shù)計算的數(shù)據(jù)統(tǒng)計功能。討論如何利用 microsoftexcel 的強(qiáng)大數(shù)據(jù)處 理功能和其中的 vba 程序,編制簡單、快捷、實用的計算數(shù)學(xué)模塊,使得許多復(fù)雜、 煩瑣的數(shù)值計算可通過自編數(shù)學(xué)軟件輕松完成。 關(guān)鍵詞: excel, lagrang , 插值函數(shù) vba 編程 指導(dǎo)老師簽字:指導(dǎo)老師簽字: 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 目目 錄錄 1 引言 .1 2 基于

3、excel vba 的 lagrang 插值的理論基礎(chǔ) .2 2.1 vba 簡介 .2 2.1.1 vba 是什么.2 2.1.2 vba 和 vb 的區(qū)別.3 2.1.3 vba 的特點.3 2.1.4 vba 的 excel 基本應(yīng)用 .4 2.2 宏操作 .5 2.2.1 宏的概念.5 2.2.2 宏可以實現(xiàn)的操作.5 2.3 插值多項式的簡介 .6 2.3.1 發(fā)展歷史 .6 2.3.2 主要內(nèi)涵 .6 2.3.3 基本類型 .6 2.4 拉格朗日(lagrang)插值函數(shù).7 2.4.1 lagrang 插值基函數(shù).7 2.4.2 lagrang 插值公式.8 3 基于 excel

4、 vba 的 lagrang 插值的實現(xiàn).9 3.1 問題的提出 .9 3.2 插值在 excel中的實現(xiàn) .9 3.3 程序設(shè)計 .9 3.4 運(yùn)行結(jié)果 .10 4 結(jié)論.12 參考文獻(xiàn).13 致謝.14 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 1 1 1 引言引言 數(shù)學(xué)在工程、技術(shù)、經(jīng)濟(jì)及其它各個領(lǐng)域的使用常常都?xì)w結(jié)為對數(shù)值計算的研究, 我們將在 excel 中實現(xiàn)幾種典型的數(shù)值計算方法,并編寫出這些計算的 vba 代碼,供 數(shù)值計算者使用并舉一反三,自己動手解決復(fù)雜計算問題,提高工作效率。 許多實際問題往往是通過函數(shù) y=f(x)來反映其內(nèi)在的規(guī)律,而一般函數(shù) y=f(x)的解 析表達(dá)式是不

5、易獲得的,往往是通過觀察或?qū)嶒灚@得 y=f(x)在一些特殊點 處的函數(shù)值,然后去找一類較簡單的函數(shù) p(x)(通常是多njxj, 1 , 0njyj, 1 , 0 項式函數(shù))滿足來代替 f(x)即使 y=f(x)的解析表達(dá)式已知,要 njyxp jj , 1 , 0 求出 y=f(x)在一些特殊點處的函數(shù)值 f()也是不容易的,這時我們的想法是用一個 j x j x 多項式 p(x)來近似代替 f(x),用 p()代替 f()用多項式近似表達(dá)函數(shù)是近似計算與 j x j x 理論分析的重要內(nèi)容,它在計算數(shù)學(xué)中占有舉足輕重的地位在這些方面已有了許多 數(shù)學(xué)家作了大量的工作,例如 lagrange、

6、newton、hermite、taylor 等。本文將 lagrang 展開式的形式給出插值的計算方法。 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 2 2 2 基于基于 excelexcel vbavba 的的 lagranglagrang 插值的理論基礎(chǔ)插值的理論基礎(chǔ) 2.12.1 vbavba 簡介簡介 2.1.12.1.1 vbavba 是什么是什么 直到 90 年代早期,使應(yīng)用程序自動化還是充滿挑戰(zhàn)性的領(lǐng)域 .對每個需要自動 化的應(yīng)用程序 ,人們不得不學(xué)習(xí)一種不同的自動化語言 .例如:可以用 excel 的宏語 言來使 excel 自動化,使用 word basic 使 word 自動化,等

7、等.微軟決定讓它開發(fā)出 來的應(yīng)用程序共享一種通用的自動化語言 -visual basic for application(vba), vba 是非常流行的應(yīng)用程序開發(fā)語言 visual basic 的子集. 實際上 vba 是寄生于 vb 應(yīng)用程序的版本 . vba 究竟是什么 ?更確切地講 ,它是一種自動化語言 ,它可以使常用的程序自動 化,可以創(chuàng)建自定義的解決方案 . 此外,還可以將 excel 用做開發(fā)平臺實現(xiàn)應(yīng)用程序 . office 取得巨大成功的一個重要原因就是vba,使用 vba 可以完成很多事情, 基于 excel、word 的 vba 小程序不計其數(shù)。 大多數(shù)人看到了 vba

8、 可以自動化一個程序,可以擴(kuò)展已有程序,但沒有看到在 office 中,vba 代碼可以是錄制的,而不是寫出來的,帶來的好處是,學(xué)習(xí)曲線變 得非常緩。如果沒有宏錄制功能,要熟悉某個office 組件的對象模型,絕非一日 之功。 以 arcgis 為例,arcgis 擴(kuò)展必須使用 arcobject,不管是使用 vba 也罷,vb 也罷,還是 c+也罷。但同時, arcobject 的學(xué)習(xí)不是一天兩天可以搞定,對于業(yè) 余程序員,要使用 vba 來擴(kuò)展 arcgis,幾乎沒有可能;專業(yè)程序員又不屑使用 vba;而對于公司,如果要基于 arcobject 來擴(kuò)展 arcgis,選擇 vba 意味著源

9、碼 的保護(hù)很困難。所以, arcgis 的 vba 就如同雞肋。 不過,學(xué)習(xí) ao 的時候,使用 vba 比使用其他語言要容易一些,寫幾行代碼, 然后直接運(yùn)行測試結(jié)果,這種交互式的學(xué)習(xí)應(yīng)該是最好的學(xué)習(xí)方法。 arcgis 以及 ao 與 office 相比,還有一個很大的差別,就是arcgis 缺乏中 等粒度的對象,例如 word 和 excel 的 range 對象。對于 office 開發(fā),可以在對 底層小粒度對象一無所知的狀況下做很多事情,這就是抽象的力量。常人可以處理 的復(fù)雜度是有限的,面對數(shù)十個對象和幾百個對象,后者需要付出的努力不是10 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 3 倍,

10、而是數(shù)十倍或更多,因為在學(xué)習(xí)過程中,必須可以把這些對象在大腦中很好的 組織,以控制其復(fù)雜度。 visual basic for applications(簡稱 vba)是新一代標(biāo)準(zhǔn)宏語言,是基于 visual basic for windows 發(fā)展而來的。它與傳統(tǒng)的宏語言不同,傳統(tǒng)的宏語言不具有高級語 言的特征,沒有面向?qū)ο蟮某绦蛟O(shè)計概念和方法。而 vba 提供了面向?qū)ο蟮某绦蛟O(shè) 計方法,提供了相當(dāng)完整的程序設(shè)計語言。vba 易于學(xué)習(xí)掌握,可以使用宏記錄器記 錄用戶的各種操作并將其轉(zhuǎn)換為 vba 程序代碼。這樣用戶可以容易地將日常工作轉(zhuǎn) 換為 vba 程序代碼,使工作自動化。因此,對于在工作

11、中需要經(jīng)常使用 office 套裝 軟件的用戶,學(xué)用 vba 有助于使工作自動化,提高工作效率。另外,由于 vba 可以 直接應(yīng)用 office 套裝軟件的各項強(qiáng)大功能,所以對于程序設(shè)計人員的程序設(shè)計和開發(fā) 更加方便快捷。 2.1.22.1.2 vbavba 和和 vbvb 的區(qū)別的區(qū)別 1. vb 是設(shè)計用于創(chuàng)建標(biāo)準(zhǔn)的應(yīng)用程序 ,而 vba 是使已有的應(yīng)用程序 (excel 等)自 動化。 2. vb 具有自己的開發(fā)環(huán)境 ,而 vba 必須寄生于已有的應(yīng)用程序 。 3. 要運(yùn)行 vb 開發(fā)的應(yīng)用程序 ,用戶不必安裝 vb,因為 vb 開發(fā)出的應(yīng)用程序 是可執(zhí)行文件 (*.exe),而 vba

12、 開發(fā)的程序必須依賴于它的父應(yīng)用程序 ,例如 excel。 盡管存在這些不同 ,vba 和 vb 在結(jié)構(gòu)上仍然十分相似 .事實上,如果你已經(jīng)了解 了 vb,會發(fā)現(xiàn)學(xué)習(xí) vba 非常快.相應(yīng)的,學(xué)完 vba 會給學(xué)習(xí) vb 打下堅實的基礎(chǔ) 。而 且,當(dāng)學(xué)會在 excel 中用 vba 創(chuàng)建解決方案后 ,即已具備在 word access outlook foxpro prowerpoint 中用 vba 創(chuàng)建解決方案的大部分知識 。 * vba 一個關(guān)鍵特征是你所學(xué)的知識在微軟的一些產(chǎn)品中可以相互轉(zhuǎn)化。 2.1.32.1.3 vbavba 的特點的特點 vba 最大特點和最大優(yōu)點是利用面向?qū)ο螅?/p>

13、oop)的 activex automation 技術(shù),使 語言的引擎在技術(shù)上與開發(fā)環(huán)境分離。它的功能在很大程度上依賴于它的客戶顯露的 automation 接口。同時,由于 vba 是基于 activex automation 技術(shù),它可以使用任何 automation 技術(shù)的應(yīng)用程序共同工作。 在 microsoft excel 中,與表對應(yīng)的對象是工作表(sheet 或 worksheet),與每 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 4 一個表格方格對應(yīng)的對象是單元格區(qū)域(range),它可以僅包括一個單元格(cell), 也可以由多個單元格合并而成。工作表對象中的 cells 屬性,在

14、單元格的選擇方面可 以達(dá)到與 range 相同的效果,它是以行(row)和列(gol)作為參數(shù)的,對于行和列 的選擇可以采用變量的形式。在本例中,可設(shè)定工作表(worksheet)的每一行第一列 (cells(i,1)為中樁樁號,每一行第二列(cells(i,2)為對應(yīng)的地面高程。 2.1.42.1.4 v vb ba a 的的 e ex xc ce el l 基基本本應(yīng)應(yīng)用用 application 對象是 excel 對象模型的頂層,表示整個 excel 應(yīng)用程序。在 vb 應(yīng) 用程序中調(diào)用 excel,就是使用 application 對象的屬性、方法和事件。為此,首先要 聲明對象變量:

15、 dim vbexcel as object 或直接聲明為 excel 對象: dim vbexcel as excel.application 在聲明對象變量之后,可用 createobject 函數(shù)或 getobject 函數(shù)給變量賦值新的 或已存在的 application 對象引用。 1.用 createobject 函數(shù)生成新的對象引用: set vbexcel=createobject (excel.application) 字符串excel.application是提供 excel 應(yīng)用程序的編程 id,這個變量引用 excel 應(yīng)用程序本身。 2. 用 getobject 函數(shù)

16、打開已存在的對象引用: set appexcel=getobject(samp.xls) 上面語句打開文件 samp.xls。 一一 applicationapplication 對象常用的屬性、方法對象常用的屬性、方法 方法方法 / 屬性屬性描述描述 visible 屬性取 true 或 false,表明 excel 應(yīng)用程序是否可見 left,top 屬性excel 窗口的位置 height,width 屬性excel 窗口的大小 windowstate 屬性 指定窗口的狀態(tài),?。簒imaximized(最大化)x1 minimized(最小化)x1 normal(缺省) quit 方法退

17、出 microsoft excel calculate 方法重新計算所有打開的工作簿、工作表或單元格 evaluate 方法求值數(shù)學(xué)表達(dá)式并返回結(jié)果 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 5 示例 1: 求值數(shù)學(xué)表達(dá)式: dim vbexcel as object set vbexcel=createobject (excel.application) x=vbexcel. evaluate (3+5*(cos (1/log (99. 9) 2.22.2 宏宏操作操作 2.2.12.2.1 宏的概念宏的概念 要使 access 2000 的眾多數(shù)據(jù)庫對象成為一個整體,以一個應(yīng)用程序的面貌展示 給

18、用戶,就必須借助于代碼類型的數(shù)據(jù)庫對象。宏對象便是此類數(shù)據(jù)庫對象中的一種。 宏對象是一個或多個宏操作的集合,其中的每一個宏操作執(zhí)行特定的單一功能。 用戶可以將這些宏操作組織起來形成宏對象以執(zhí)行特定的任務(wù)。 用戶主要是在進(jìn)行事務(wù)性或重復(fù)性的操作的情況下使用宏,如打開和關(guān)閉窗體、 顯示和隱藏工具欄或運(yùn)行報表等。 所謂宏,就是一個 vba 模塊,這里所說的宏操作,就是一個工作表操作法的全過 程可通過自己編寫一段宏程序自動完成,結(jié)果相同,且精度能自動控制,而且這段程 序非常容易編寫,只要在工作表中操作時啟動“宏錄制”(擊“工具/宏/錄制新宏” , 再確認(rèn)宏名和保存宏的位置,出現(xiàn)“停止錄制”確認(rèn)工具框,

19、為方便使用控制語句, 最好單擊其上的“相對引用”鈕,),當(dāng)進(jìn)行重復(fù)操作過程時即可停止宏錄制(當(dāng)然也 可以錄制到操作結(jié)束),再用錄制宏同樣的方法打開宏代碼進(jìn)行編輯,刪除多余的句, 將適當(dāng)?shù)闹貜?fù)操作語句放到循環(huán)體中即完成宏代碼編寫,方便得很。 2.2.22.2.2 宏可以實現(xiàn)的操作宏可以實現(xiàn)的操作 一般來說,使用宏可以實現(xiàn)下列操作: 1創(chuàng)建全局賦值鍵(變量) 。 2在首次打開數(shù)據(jù)庫時,執(zhí)行一個或一系列操作。 3建立自定義菜單欄。 4從工具欄上的按鈕執(zhí)行自己的宏或者程序。 5可以使用宏把篩選程序加到各個記錄中,從而提高記錄查找的速度。 6使用宏可以隨時打開或者關(guān)閉數(shù)據(jù)庫對象。 南昌航空大學(xué)測光學(xué)院計

20、算機(jī)課程設(shè)計 6 7使用宏可以為窗體或者報表中的控制設(shè)置值,同時還可以模擬鍵盤動作,并把輸入 提供給對話框。 8.可以使用宏來顯示各種信息,并能夠使揚(yáng)聲器發(fā)出報警聲,以引起用戶的注意。 9使用宏可以實現(xiàn)數(shù)據(jù)自動傳輸??梢宰詣拥卦诟鞣N數(shù)據(jù)格式之間引入或?qū)С鰯?shù)據(jù)。 10可以使用宏移動 access 環(huán)境下的任何一個窗體,并能夠改變它們的大小。 11使用宏可以啟動其他的應(yīng)用程序,可以是 msdos 應(yīng)用程序,也可以是 windows 應(yīng)用程序。 12使用宏可以為窗體定制菜單,并可以讓用戶設(shè)計其中的內(nèi)容。 2.32.3 插值多項式的簡介插值多項式的簡介 2.3.12.3.1 發(fā)展歷史發(fā)展歷史 在離散數(shù)

21、據(jù)的基礎(chǔ)上補(bǔ)插連續(xù)函數(shù),使得這條連續(xù)曲線通過全部給定的離散數(shù)據(jù) 點。插值是離散函數(shù)逼近的重要方法,利用它可通過函數(shù)在有限個點處的取值狀況, 估算出函數(shù)在其他點處的近似值。 早在 6 世紀(jì),中國的劉焯已將等距二次插值用于天文計算。17 世紀(jì)之后,i.牛頓, j.-l.拉格朗日分別討論了等距和非等距的一般插值公式。在近代,插值法仍然是數(shù)據(jù) 處理和編制函數(shù)表的常用工具,又是數(shù)值積分、數(shù)值微分、非線性方程求根和微分方 程數(shù)值解法的重要基礎(chǔ),許多求解計算公式都是以插值為基礎(chǔ)導(dǎo)出的。 2.3.22.3.2 主主要要內(nèi)內(nèi)涵涵 插值問題的提法是:假定區(qū)間上的實值函數(shù)在該區(qū)間上個互不相同ba, xf1n 點處的

22、值是,要求估算在中某點的值。其做法是: n xxx 10, n xfxf, 0 xfba, 在事先選定的一個由簡單函數(shù)構(gòu)成的有個參數(shù)的函數(shù)類1n n ccc 10, 中求出滿足條件的函數(shù),并以作為 n ccc, 10 nixfxp ii , 1 , 0 xp xp 的估值。此處稱為被插值函數(shù),稱為插值結(jié)(節(jié))點, xf xf n xxx 10, 稱為插值函數(shù)類,上面等式稱為插值條件,中滿足上 n ccc, 10 n ccc, 10 式的函數(shù)稱為插值函數(shù),稱為插值余項。當(dāng)估算點屬于包含 xpxfxr 的最小閉區(qū)間時,相應(yīng)的插值稱為內(nèi)插,否則稱為外插。 n xxx 10, 南昌航空大學(xué)測光學(xué)院計算

23、機(jī)課程設(shè)計 7 2.3.32.3.3 基本類型基本類型 多項式插值多項式插值 這是最常見的一種函數(shù)插值。在一般插值問題中,若選取 為 n 次 多項式類,由插值條件可以唯一確定一個 n 次插值多項式滿足上述條件。從幾何上看 可以理解為:已知平面上 n1 個不同點,要尋找一條 n 次多項式曲線通過這些點。插 值多項式一般有兩種常見的表達(dá)形式,一個是拉格朗日插值多項式,另一個是牛頓插 值多項式。 埃埃爾爾米米特特插插值值 對于函數(shù) f(x),常常不僅知道它在一些點的 函數(shù)值,而且還 知道它在這些點的 導(dǎo)數(shù)值。這時的插值函數(shù) p(x),自然不僅要求在這些點等于 f(x)的函數(shù)值,而且要求 p(x)的導(dǎo)

24、數(shù)在這些點也等于 f(x)的導(dǎo)數(shù)值。這就是 埃爾米特插值問題,也稱帶導(dǎo)數(shù)的插值問題。從幾何上看,這種插值要尋求的多項 式曲線不僅要通過平面上的已知點組,而且在這些點(或者其中一部分)與原曲線 “密切”,即它們有相同的斜率??梢姲柮滋夭逯刀囗検奖绕鹨话愣囗検讲逯涤?較高的光滑逼近要求。 分分段段插插值值與與樣樣條條插插值值 為了避免高次插值可能出現(xiàn)的大幅度波動現(xiàn)象,在實際 應(yīng)用中通常采用分段低次插值來提高近似程度,比如可用分段線性插值或分段三次 埃爾米特插值來逼近已知函數(shù),但它們的總體光滑性較差。為了克服這一缺點,一 種全局化的分段插值方法 三次 樣條插值成為比較理想的工具。見 樣條插值。 三

25、三角角函函數(shù)數(shù)插插值值 當(dāng)被插函數(shù)是以 2 為周期的函數(shù)時,通常用 n 階三角多項式 作為插值函數(shù),并通過 高斯三角插值表出。 插值(interpolation),有時也稱為 “重置樣本”,是在不生成 像素的情況 下增加圖像像素大小的一種方法,在周圍像素色彩的基礎(chǔ)上用數(shù)學(xué)公式計算丟失像 素的色彩。有些相機(jī)使用插值,人為地增加圖像的 分辨率。 道插值,還有 0.618 法插值,三點二次插值和二點二次插值。 2.42.4 拉格朗日拉格朗日(lagrang)(lagrang)插值函數(shù)插值函數(shù) 2.4.12.4.1 lagranglagrang 插值基函數(shù)插值基函數(shù) 選取了作為插值空間的一組基函數(shù)。本

26、節(jié)將引入該空間中令一組基 n xxx, 1 2 n p 函數(shù) lagrang 插值基函數(shù)。 針對個互異的插值節(jié)點,夠照不超過 n 次的多項式 ,使之滿足插1n i x n i 0 xli 值條件 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 8 njixl ij ijijji , 2 , 1 , 0, 1 0 設(shè) niiii xxxxxxxxxxcxl 1110 由得 1 ii xl niiiiiii i xxxxxxxxxx c 1110 1 故 niiiiiii nii i xxxxxxxxxx xxxxxxxxxx xl 1110 1110 或 ini n niiiiiii nii i xxx x

27、 xxxxxxxxxx xxxxxxxxxx xl 1 1 1110 1110 其中 nn xxxxx 01 xlxlxl n , 10 成為關(guān)于節(jié)點的 lagrang 插值基函數(shù)。 n ii x 0 它們依賴于插值點 。 n ii x 0 并滿足: njixl ijji , 2 , 1 , 0, 2.4.22.4.2 lagranglagrang 插值公式插值公式 做 可以驗證滿足插值條件。稱之為 lagrang 插值多項 n i iin xlxfxl 0 xln 式。 其誤差估計為 x n f xlxfxr n n nn1 1 !1 1.若被插值函數(shù)本身就是不超過 n 次的多項式,則有。

28、xfxln 2. 取,則。 故 n i i xl 0 1 1xf 0 1 n f 1111 10 xlxlxl n 拉格朗日插值公式是 i n i ii n i n j ji j n xfxlxf xx xx xr 100 其中 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 9 n j ji j i xx xx xl 0ni, 2 , 1 稱為插值基函數(shù),求該多項式的關(guān)鍵是求 xli 。 3 3 基于基于 excelexcel vbavba 的的 lagranglagrang 插值插值的實現(xiàn)的實現(xiàn) 3.13.1 問題的提出問題的提出 已知函數(shù) f(x)的插值條件為: i x 0.400.550.650.

29、800.901.05 i x 0.410750.578150.696750.888111.026521.25382 求題中的拉格朗日擂值多項式,并求 f(0.596)的近似值。 xp5 3.23.2 插值在插值在 excelexcel 中的實現(xiàn)中的實現(xiàn) 將插值條件輸人 excel 工作表的區(qū)域 a2:b7 中(見表 1,當(dāng)然也可以輸人在其它地 方),在 c3 中輸入公式“=(b3 一 b2)/(a3 一 a2)”即得差商,c4 中輸人 10,x xf “=(b4 一 b3)/(a4 一 a3)”又得到差商;至于二階差商,只要在 d4 中輸 21,x xf 人公式“=(c4-c3)/(a4 一

30、a2)”,立即可得到的值,其余各階差商的表 210 ,xxxf 上計算方法都是簡單的重復(fù)操作,表 1 只給出最終結(jié)果。 表 1 計算差商表 南昌航空大學(xué)測光學(xué)院計算機(jī)課程設(shè)計 10 3.33.3 程序設(shè)計程序設(shè)計 編寫出計算 f(0.596)的宏 macro4 如下(題中要求的的表達(dá)式可根據(jù)該宏的運(yùn) xp5 行結(jié)果寫出,由于式子較長,這里就省略了。若對別的 x。值,只要將程序中語句 “w=0.596”改為“w=x0”就可計算出 f(x0)的值)。 sub macro4() dim x(5), y(5), l(5), t(5)定義 4 個數(shù)組 dim w, u, v, w1定義 4 個變量 fo

31、r i = 0 to 5 x(i) = cells(i + 2, 1).value: y(i) = cells(i + 2, 2).value 將單元格 中的插值條件賦給數(shù)組 next i w = 0.596 for k = 0 to 5 u = 1 v = 1 for j = 0 to 5 if j = k then j = j + 1: if j = 6 then goto 2 u = u * (w - x(j): v = v * (x(k) - x(j) next j l(k) = u / v: cells(11, k + 1).value = l(k) 2 next k 句前的 2 是行標(biāo)號,與語句 g

溫馨提示

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

評論

0/150

提交評論