數(shù)值計算方法實驗1_第1頁
數(shù)值計算方法實驗1_第2頁
數(shù)值計算方法實驗1_第3頁
數(shù)值計算方法實驗1_第4頁
數(shù)值計算方法實驗1_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、西華數(shù)學與計算機學院上機實踐報告課程名稱:數(shù)值計算方法A年級:2007級上機實踐成績:指導教師:嚴常龍姓名:張安平上機實踐名稱:非線性方程求根問題學號:312007070102107上機實踐日期:2009.11.21上機實踐編號:1上機實踐時間:14:0017:30 一、目的1通過本實驗的編程練習,加深對非線性方程求根方法之二分法、簡單迭代法、牛頓迭代法等的構造過程的理解;2能將各種方法的算法描述正確地改編為程序并上機實現(xiàn);3比較各種方法在求解同一非線性方程根時,在收斂情況上的差異。二、內容與設計思想自選求根問題,分別用二分法、簡單迭代法、埃特金加速收斂法和牛頓迭代法求解其根,然后完成編程作業(yè)

2、(注意把同一求根問題的幾種不同方法放在一個程序之內)。以下求根問題供參考和選擇,也可自行選擇其他求根問題:1用二分法求方程f(x)=x3-2x-5=0在區(qū)間2 , 3內的根。2方程f(x)=2x3-5x2-19x+42=0在x=3.0附近有根,試寫出其三種不同的等價形式以構成三種不同的迭代格式,再用簡單迭代法求根,觀察這三種迭代是否收斂及收斂的快慢。3用牛頓迭代法求方程f(x)=x3+2x2+10x-20=0在區(qū)間1 , 1.5上的根。4Cosx=x在區(qū)間0 ,p/2上的根。三、使用環(huán)境本次上機實踐所使用的平臺和相關軟件。是VC+6.0.四、核心代碼及調試過程注:詳細記錄核心代碼以及程序在調式

3、過程中出現(xiàn)的問題及解決方法;記錄程序執(zhí)行的結果。第一題:用二分法求方程f(x)=x3-2x-5=0在區(qū)間2 , 3內的根。方程的近似解是:x=2.094552。#include#include#define N 25void main()int k;float aN,bN,cN,faN,fbN,fcN;float x,y;printf(請輸入a0的數(shù)值:);scanf(%f,&x);printf(n請輸入b0的數(shù)值:);scanf(%f,&y);a0=x; b0=y;for(k=0;k0)bk+1=ck;ak+1=ak;else if(fak*fck0)ak+1=ck;bk+1=bk;for(

4、k=0;kN;k+)printf(下面是第%d次計算結果!n,k+1);printf( a%d=%f c%d=%f b%d=%fn,k,ak,k,ck,k,bk);printf(#n);printf( fa%d=%f fc%d=%f fb%d=%fn,k,fak,k,fck,k,fbk);計算23次,得到最終結果:x=2.094552。第二題:2方程f(x)=2x3-5x2-19x+42=0在x=3.0附近有根,試寫出其三種不同的等價形式以構成三種不同的迭代格式,再用簡單迭代法求根,觀察這三種迭代是否收斂及收斂的快慢。用形式(1):X= ,迭代法求根。#include#include#defi

5、ne N 20void main()int k;double x;printf(請輸入x的初始數(shù)值:);scanf(%lf,&x);for(k=0;kN;k+)x=sqrt(2*x*x*x-19*x+42)/5);printf(第%d次計算結果:,k+1);printf(x=%lfn,x);printf(方程的近似解為:x=%lfn,x);迭代計算14次,得到最后結果:x=2.00000。用迭代形式(2):X= ,迭代法求根。#include#include#define N 50void main()int k;double x;printf(請輸入x的初始數(shù)值:);scanf(%lf,&x

6、);for(k=0;kN;k+)x=pow(5*x*x+19*x-42)/2,1.0/3.0);printf(第%d次計算結果:,k+1);printf(x=%lfn,x);printf(方程的近似解為:x=%lfn,x);迭代計算46次,得到最后結果x=3.500000。用形式(3):X=(2*X*X*X-5*X*X+42)/19迭代法求根。#include#include#define N 20void main()int k;double x;printf(請輸入x的初始數(shù)值:);scanf(%lf,&x);for(k=0;kN;k+)x=(2*x*x*x-5*x*x+42)/19;pr

7、intf(第%d次計算結果:,k+1);printf(x=%lfn,x);printf(方程的近似解為:x=%lfn,x);迭代計算12次,得到最后結果:x=2.00000。第3題:用牛頓迭代法求方程f(x)=x3+2x2+10x-20=0在區(qū)間1 , 1.5上的根。#include#include#define N 10void main()int k;double x;printf(請輸入x的初始數(shù)值:);scanf(%lf,&x);for(k=0;kN;k+)x=x-(x*x*x+2*x*x+10*x-20)/(3*x*x+4*x+10);printf(第%d次計算結果:,k+1);pr

8、intf(x=%lfn,x);printf(方程的近似解為:x=%lfn,x);計算3次,得到最后結果:x=1.368808。第4題:Cosx=x在區(qū)間0 ,p/2上的根。#include#include#define N 40void main()int k;double x;printf(請輸入x的初始數(shù)值:);scanf(%lf,&x);for(k=0;kN;k+)x=cos(x);printf(第%d次計算結果:,k+1);printf(x=%lfn,x);printf(方程的近似解為:x=%lfn,x);五、總結注:對上機實踐結果進行分析,上機的心得體會及改進意見。通過本次上機實驗,我對求非線性方程的實單根有了深入的掌握。方程的解稱為方程的根或函數(shù)的零點。函數(shù)可以是多項式,指數(shù)函數(shù),對數(shù)函數(shù),三角函數(shù)或其它超越函數(shù)。方程的實數(shù)根可能不止一個,我們可以采用隔離的辦法,使得實函數(shù)在某個區(qū)間上有且只有一個零點。方程求根常用的方法有:二分法,簡單迭代法,牛頓迭代法。三種方

溫馨提示

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

評論

0/150

提交評論