資源描述:
《數值分析實驗new》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、《數值分析》計算實習報告冊專業(yè)信息與計算科學學號20112984姓名張妃___2012~2013年第一學期實驗一數值計算的工具Matlab1.解釋下MATLAB程序的輸出結果程序:t=0.1n=1:10e=n/10-n*t答案:t=0.1000小數點后輸出四位n=12345678910n取1到10e=1.0e-015*00-0.055500-0.1110-0.1110000e等于-0.0555×2.下面MATLAB程序的的功能是什么?程序:x=1;while1+x>1,x=x/2,pause(0.02),endx=1;whilex+x>x,x=2*x,pause(
2、0.02),endx=1;whilex+x>x,x=x/2,pause(0.02),end答案:當x=1時,對x無限二分,到1+x>1結束,且循環(huán)之間間隔0.02秒當x=1時,對無限循環(huán),到x+x>x結束,且循環(huán)之間間隔0.02秒當x=1時,對x無限二分,到x+x>x結束,且循環(huán)之間間隔0.02秒3.考慮下面二次代數方程的求解問題公式是熟知的,與之等價地有,對于,應當如何選擇算法。答案:clc,cleara=1;b=100000000;c=1;x1=(-b+sqrt(b*b-4*a*c))/2*ax2=(-b+sqrt(b*b-4*a*c))/2*ax3=2*c/
3、(-b+sqrt(b*b-4*a*c))x4=2*c/(-b+sqrt(b*b-4*a*c))d=x1*x1+100000000*x1+1e=x2*x2+100000000*x2+1f=x3*x3+100000000*x3+1g=x4*x4+100000000*x4+1x1=-7.4506e-009=-7.4506×x2=-7.4506e-009x3=-134217728x4=-134217728d=0.25494194030762e=0.25494194030762f=4.592625709481985e+015g=4.592625709481985e+015因
4、為d,e比f,g更接近0所以公式更好。4.函數有冪級數展開利用冪級數計算的MATLAB程序為functions=powersin(x)s=0;t=x;n=1;whiles+t~=s;s=s+t;t=-x^2/((n+1)*(n+2))*t;n=n+2;end修改后程序functions=powersin(x)s=0;x=pi/2;t=x;k=0;n=1;whiles+t~=s;s=s+t;t=-x^2/((n+1)*(n+2))*t;n=n+2;k=k+1;endK結果X=21*pi/2k=60ans=0.9999X=11*pi/2k=37ans=-1.0000X
5、=pi/2k=11ans=1.0000(a)解釋上述程序的終止準則。t=0時,終止(b)對于計算的進度是多少?分別計算多少項?ans=1.0000ans=-1.0000ans=0.999911,37,605.考慮調和級數,它是微積分中的發(fā)散級數,在計算機上計算該級數的部分和,會得到怎么樣的結果,為什么?clc;clears=0;n=20;fori=n-1:n+10000000000t=1/i;s=s+t;endS結果s=18.5697fori=n-1:n+100000s=8.5952fori=n-1:n+10000000000000s=18.5697S會隨著i的項
6、數的增大而增大,到一定程度后不變。因為在計算機中如果一個數很小,計算機會默認為0.6.指數函數的級數展開,如果對于,用上述的級數近似計算指數函數的值,這樣的算法結果是否會好,為什么?1.clc,clears=1;t=1;x=-1;fori=1:100000t=t*i;tt=x^i/t;s=s+tt;endsX=1;s=2.7183x=-1;s=0.36792.functions=powersin(x)s=0;m=1;t=1;n=1;whiles+t~=s;s=s+t;m=m*n;t=-x^(n)/m;n=n+2;endx=0,f=1;x=1,y=-0.4107;x
7、=-1,f=2,41077.考慮數列,它的統(tǒng)計平均定義為,標準差數學上等價于作為標準差的兩種算法,你將如何評價他們的得與失。1.clc,cleara=input('請輸入數據')n=length(a);sm=sum(a);ave=sm/n;b1=0;fori=1:nb1=(a(i)-ave)^2+b1;endb1b2=((1/(n-1))*b1)^(1/2)結果b1=133.9368b2=11.57312.clc,cleara=input('請輸入數據')n=length(a);sm=sum(a);ave=sm/n;b3=0;fori=1:nb3=(a(i))^2
8、+b3;e