[帮忙回答4道上机试验报告题是关于IE很简单的]1、本地磁盘上找到历史纪录文件夹、收藏夹、频道文件夹、临时文件夹的位置 C:\Documents and Settings\用户名\Local Settings\History,历史纪录文件夹 C:\Documents and Set...+阅读
以前写的数值分析作业,和楼主的题目大同小异,给你参考一下吧:1. 主函数 syms x; x0 = input('Enter interval x0 = '); x1 = input('Enter interval x1 = '); x = x0:0.01:x1; disp('Enter function. Example: f(x)=sin(x)-.4'); func = input('Enter function: f(x)=', 's');% Plot function fplot(func, [x0,x1]); grid on; myeps =10^-5; while 1 disp('1) Do you want to plot another function?, '); disp(' or find the solution to f(x)=0 using '); disp('2) Bisection, '); disp('3) Regula-Falsi, '); disp('4) Newton-Raphson, '); disp('5) Secant Method., or '); disp('6) Exit.'); choice = input ('Enter the number: '); switch (choice) case 1 x0 = input('Enter interval x0 = '); x1 = input('Enter interval x1 = '); x = x0:0.01:x1; func = input('Enter function: f(x)=', 's'); cla; fplot(func, [x0,x1]);grid on; case 2 %bisection method a = input('Enter the value a = '); b = input('Enter the value b = '); [X, fX, flag] = bisection(func, a, b, myeps); case 3 %Regula-Falsi a = input('Enter the value a = '); b = input('Enter the value b = '); [X, fX, flag] = regularfalsi(func, a, b, myeps); case 4 %Newton Raphson x = input('Enter initial value x = '); [X, fX, flag] = newtonraphson(func, x, myeps); case 5 %secant a = input('Enter first value p0 = '); b = input('Enter second value p1 = '); [X, fX, flag] = secant(func, a, b, myeps); case 6 disp ('bye'); break; end end2.二分法:function [ X, fX ,flag] = bisection( func, a, b, eps )%X = zeros(100,1);%fX = zeros(100,1); disp('==============================='); disp(' x f(x) i '); disp('-------------------------------'); flag=-1; for k=1:100 c = (a+b)/2; x=a; fa = eval(func); x=b; fb = eval(func); x=c; fc = eval(func); if (fa*fb>0) fprintf('Invalid interval'); X=0; fX=0; return; end fprintf('-------------------------\n'); fprintf('%10f %15f %3d\n', a, fa, k); fprintf('%10f %15f %3d\n', b, fb, k); fprintf('%10f %15f %3d\n', c, fc, k); X(k,1) = c; fX(k,1) = fc; if (fc == 0 || abs(fc) disp('-------------------------------'); disp('*** Solution Reached! ***'); disp('==============================='); flag=1; return; end if (fa*fc>0) %fa and fc is of same sign a=c; fa=fc; else b=c; fb=fc; end end flag=0; disp('-------------------------------'); disp('!!! Method did not converge !!!'); disp('===============================');3. 牛顿-拉弗森法(应该就是lz需要的改进的牛顿法) function [ X, fX ,flag] = newtonraphson( func, a, eps )%X = zeros(100,1);%fX = zeros(100,1); disp('==============================='); disp(' x f(x) i '); disp('-------------------------------'); flag=-1; symfunc=sym(func); dy=diff(symfunc); X=0; fX=0; x=a; for k=1:100 diffx=eval(dy); fx=eval(func); if (diffx==0) fprintf('Zero derivative'); return; end x=x-fx/diffx; fprintf('%10f %15f %3d\n', x, fx, k); X(k,1) = x; fX(k,1) = fx; if (fx == 0 || abs(fx) disp('-------------------------------'); disp('*** Solution Reached! ***'); disp('==============================='); flag=1; return; end end flag=0; disp('-------------------------------'); disp('!!! Method did not converge !!!'); disp('===============================');4. secant法(也是另一种改进的牛顿法) function [ X, fX ,flag] = secant( func, p0,p1, eps )%X = zeros(100,1);%fX = zeros(100,1); disp('==============================='); disp(' x f(x) i '); disp('-------------------------------'); flag=-1; X=0; fX=0; for k=1:100 x=p0; fp0=eval(func); x=p1; fp1=eval(func); if (fp1==fp0) fprintf('divided by zero'); return; end fprintf('%10f %15f %3d\n', p1, fp1, k); X(k,1) = p1; fX(k,1) = fp1; temp=p1; p1=p1-fp1*(p1-p0)/(fp1-fp0); p0=temp; if (fp1 == 0 || abs(fp1) disp('-------------------------------'); disp('*** Solution Reached! ***'); disp('==============================='); flag=1; return; end end flag=0; disp('-------------------------------'); disp('!!! Method did not converge !!!'); disp('==============================='); 地方不够大,regular-falsi就不贴了 和二分法类似 把这4个文件放在一个文件夹里,主程序调用二分法,牛顿拉弗森法或secant法就可以了 祝lz好运
延伸阅读:
计算机应用基础上机报告怎么写Word排版,表格制作与编辑。Powerpoint的制作,初步认识计算机办公应用OFFICE。 二、实训过程 第一天:初步熟悉计算机的性能和认识Word; 第二天:练习Word题; 第三天:认识Powerpoint...
积极分子上机考试检讨书尊敬的校领导、老师:今天是20xx年6月1日,上午本来有一节企业管理基础课,由于自己的私事,就缺席了3~4节的这堂课,而且没有跟老师请假,在班里面造成了严重的影响,经过老师的教导,我知...
求一份java上机实验心得 300字左右在这一系列的实验中,我基本掌握了Java的编程规则、知识要点和一些小技巧,特别是对面向对象的编程思想和风格有了进一步的认识和体会。同时,因正确的编出程序而带来的成就感让我...