当前位置:文档之家› 计算方法非线性方程求根实验

计算方法非线性方程求根实验

计算方法非线性方程求根实验
计算方法非线性方程求根实验

普通计算器用计算器解方程的方法

用计算器解方程的方法 高中时发现一个用计算器来解方程的方法,前一阵用到计算器就想起来了,习惯性地谷歌之、百度之,居然没有发现类似的方法,于是就想把它写下来。 说明下对计算器的要求,只要是个带有"Ans"键的计算器就行,一般我们用的都是这种计算器。对于要解的方程,无论是超越方程还是高次方程,基本上都一样。 先来初步尝试一下。如果要解的方程是:exp(x)=-x+3 (注:exp(x) 是表示e的x次方) ,你要按的键就像下面一样: 0 = ln ( - Ans + 3 ) = = = = ?? 如你所知,Ans键有保存上一次计算结果的功能,所以第一条语句就是给Ans赋初值的意思,初值要选在解的附近,大概估计下就可以。第二条我没有打错,你在连续按了十几次"=" 后,是不是发现再按的时候屏幕上的数值不变了?这就是方程的解。看起来好像很晕,还是解释解释这样做的原因: 看见上面的图了吗?小赵(高一数学老师)曾经给我们介绍过一种有趣的现象,一般情况下两函数图象在交点附近有这种类似螺旋的收敛特性。灵感正是来自这里。是不是有点眉目了? 假设上面的图中两个图象分别是y=f(x) 和 y=g(x) ,而我们要解的方程是f(x)=g(x)。为了方便,这里把F(x)和G(x)分别记做f(x)和g(x)的反函数。于是这个方程可以等价变换为 x=F(g(x)) 和x=G(f(x)) 。这两个式子的右半边就是我们要输入计算器然后不断按"="的,当然,输入计算器的时候所有的x都用Ans代替。再看看上面的图,其实这两个式子中,一个的代表顺时针螺旋,另一个代表逆时针螺旋;一个能使螺旋收敛于交点,另一个会使螺旋扩张。不幸滴是,我们不知道哪个式子能使螺旋扩张,哪个能使收敛,所以两个式子都得试试,在我们按了若干次 "=" 后如果屏幕上数值稳定了,就说明这是收敛式,并且这个稳定的值就是解。比如前面的例子,方程可以变成 x=ln(-x+3) 和 x=-exp(x) +3 ,其中-exp(x)+3使值扩散,而ln(-x+3)使值收敛,就想一开始做的那样。 如果这个方程有好几个解呢?那你就使用不同的初值,一般来说,它总会收敛于离初值比较近的那个解。要注意的是,使方程各个解收敛的螺旋方向可能不同,也就是说对于每个解,你还是需要代两个式子。上面说的是理想情况,比如遇到x^5+x^2 = x^4-x+5 这样的方程,总不可能去求两边的反函数吧,累都累死。这时候,提取两边最能体现原本特征的一部分就可以了,比如这里就是x^5 和x^4 ,变换后的式子是 x=5次根号下的(x^4-x+5-x^2) 和 x=4次根号的(x^5+x^2+x-5) 。 最后不得不说,比如x=-x+3 这种情况,这种方法无效。

(完整版)小学五年级解方程计算题练习题

一、解方程专题 7+=19 X+120=176 58+X=90 X+150=290 79.4+X=95.5 2X+55=129 7 X=63 X× 9=4.5 4.4X=444 X × 4.5=90 X × 5=100 6.2X=124 X-6=19 X-3.3=8.9 X-25.8=95.4 X-54.3=100 X-77=275 X-77=144 X ÷7=9 X÷4.4=10

X÷78=10.5 X÷2.5=100 X÷3=33.3 X÷2.2=8 9-X=4.5 73.2-X=52.5 87-X=22 66-X=32.3 77-X=21.9 99-X=61.9 3.3÷X=0.3 8.8÷X=4.4 9÷X=0.03 7÷X=0.001 56÷X=5 39÷X=3 3×(X-4)=46 (8+X)÷5=15 (X+5) ÷3=16 15÷(X+0.5)=1.5

12X+8X=40 12X-8X=40 12X+X=26 X+ 0.5X=6 X-0.2X=32 1.3X+X=26 3X+5X=48 14X-8X=12 6×5+2X=44 20X-50=50 28+6X=88 32-22X=10 24-3X=3 10X×(5+1)=60 99X=100-X X+3=18 X-6=12 56-2X=20 4X+2=6 X+32=76

3X+6=18 16+8X=40 2X-8=8 4X-3×9=29 8X-3X=105 X-6×5=42 X+5=7 2X+3=10 X-0.8X=6 12X+8X=4.8 7(X-2)=49 4×8+2X=36 (X-2)÷3=7 X÷5+9=21 (200-X)÷5=30 48-27+5X=31 3X-8=16 3X+9=27 5.3+7X=7.4 3X÷5=4.8

非线性方程求根word版

第7章 非线性方程求根 本章主要内容: 1.区间二分法. 2切线法. 3.弦位法. 4.一般迭代法. 重点、难点 一、区间二分法 区间二分法是求方程f(x)=0根的近似值的常用方法。 基本思想:利用有根区间的判别方法确定方程根的区间[a,b] ,将有根区间平分为二;再利用有根区间的判别方法判断那一个区间是有根区间;重复上述步骤,直到小区间端点差的绝对值小于等于精度要求的数值,则用将上一区间的分半值作为方程的根的近似值。 区间二分法的计算步骤如下: 1. 计算区间端点的函数值f(a) , f(b)(不妨设f(a)<0,f(b)>0); 确定初始有根区间[a,b]. 2.二分有根区间[a,b],并计算)2( b a f + 取2 1b a x += 3.判断: 若0)(1=x f ,则方程的根为1x x =* ; 若 0)(1>x f ,则有根区间为[]1,x a x ∈* ;令[]],[,111b a x a = 若 0)(1

12 ln ln )ln(---≥ ε a b n 确定应二分的次数。 例1 用区间二分法求方程0353 =+-x x 在某区间内实根的近似值(精确到0.001) 【思路】参见上述区间二分法的计算步骤 解 ∵f(1.8)=-0.168<0, f(1.9)=0.359>0 ∴f(x)在区间[1.8 ,1.9]内有一个根。 由公式 644.512 ln 001 .0ln 1.0ln 12ln ln )ln(=--=---≥ εa b n 取n=6, 计算结果列表如下: 则方程在区间[1.8,1.9]内所求近似值为x * ≈ x = 1.8328125 区间二分法的优点是计算程序简单,只要f (x )在区间[a,b]上连续,区间二分法就可使用,但区间二分法不能用来求偶次重根,由于区间二分法收敛比较慢,在实际计算中,区间二分法常用来求比较好的含根区间和初始近似值,以便进一步使用收敛更快的迭代法求出更精确的近似值。 迭代序列收敛阶的概念

小学五年级解方程计算步骤

小学五年级解方程计算步骤 小学阶段解方程计算题一般有以下几个步骤,大家要认真把这几个步骤记住,看到相关题型就按照下面的方法去做就可以了。 一.移项 所谓移项就是把一个数从等号的一边移到等号的另一边去。注意,加减法移项和乘除法移项不一样,移项规则:当把一个数从等号的一边移到另一边去的时候,要把这个数原来前面的运算符号改成和它相反的运算符号,比如“+”变成“-”,或是“×”变成“÷” 请看例题: 加减法移项: x + 4 = 9 x-8=19 x=9-4 x=19+8 x=5 x=27 乘除法移项: 3x=27 x÷6=8 x=27÷3 x=8×6 x=9 x=48 1.常规题目,第一步,把所有跟未知数不能直接运算的数字,转移到与未知数相反的等号 那一边。比如: 3x - 4 = 8 5x + 9 = 24 3x=8+4 5x=24 - 9 3x=12 5x=15 x=4 x=3 2.第二种情况请记住,当未知数前面出现“-”或是“÷”的时候,要把这两个符号变成 “+”或是“×”,具体如何改变请看下面例题: 20 – 3x=2 20=2 + 3x -----(注意:也就是前面提过的移项问题,改变符号在方程里面就是移项) 20-2=3x 18=3x x=6 36÷4x = 3 36=3×4x ----(注意:也就是前面提过的移项问题,改变符号在方程里面就是移项) 36=12x x=3

3.未知数在小括号里面的情况,注意,这种情况要分两种,第一种是根据乘法分配律先把 小括号去掉 例如:3(3x+4) = 57 9x + 12=57 9x=57-12 9x=45 x=5 第二种情况就是,要看括号前面的那个数跟等号后面的那个数是否倍数关系,如果是倍数关系,可以互相除一下,当然,用这一种方法的前提就是等号另一边的数只有一个数字,如果有多个,则先要计算成一个。 例如 3(3x+4) = 57 2(4x - 6) = 30+9-3 3x+4 = 57÷3 2(4x-6) = 36 3x+4 = 19 4x – 6=36÷2 3x = 19-4 4x-6=18 3x = 15 4x=18+6 x = 5 4x=24 x=6 4.第四种情况就是未知数在等号的两边都有,这种情况就是要把未知数都移项到一边,把 其它的数字移项到另一边,具体规则,如果两个未知数前面的运算符号不一样,要把未知数前面是“-”的移到“+”这一边来,如果两个未知数前面的运算符号一样,则要把小一点的未知数移到大一点的未知数那一边去。 例如: 3x +12 = 48 – 6x 3x + 48 = 8 + 5x 3x + 6x = 48-12 48-8 = 5x – 3x 9x = 36 40 = 2x x = 4 x = 20

解方程计算题

解方程计算题 2x+8=16 x÷5=10 x+7x=8 9x-3x=6 6x-8=4 5x+x=9 x-8=6x 4÷5x=20 2x-6=12 2x+8=16 x÷5=10 x+7x=8 9x-3x=6 6x-8=4 5x+x=9 x-8=6x 4÷5x=20 2x-6=12 7x+7=14 6x-6=0 5x+6=11 2x-8=10 1÷2x-8=4 x-5÷6=7

3x+7=28 3x-7=26 9x-x=16 24x+x=50 6÷7x-8=4 3x-8=30 6x+6=12 3x-3=1 5x-3x=4 2x+16=19 5x+8=19 14-6x=8 15+6x=27 5-8x=4 7x+8=15 7x+7=14 6x-6=0 5x+6=11 2x-8=10 2x-8=4 x-5÷6=7 3x+7=28 3x-7=26 9x-x=16 24x+x=50 6÷7x-8=4 3x-8=30 6x+6=12 3x-3=1 5x-3x=4 2x+16=19 5x+8=19 14-6x=8 15+6x=27 5-8x=4 7x+8=15 9-2x=1 4+5x=9 10-x=8 8x+9=17 9+6x=14

x+9x=4+7 2x+9=17 8-4x=6 6x-7=12 7x-9=8 x-56=1 8-7x=1 x-30=12 6x-21=21 6x-3=6 9x=18 4x-18=13 5x+9=11 6-2x=11 x+4+8=23 7x-12=8 = 15 5X-2X=18 ×2= x 26×= 2x ×16―16×=4x -X= ÷X=0. 3 X÷= x+13=33 3 - 5x=80 6x=5 4 -= 9 +4x =40 -+= -= 12 -4x=20 1/3 x+5/6 x= 12 x+34 x=1 18x-14 x= 12

π计算方法,二元一次和二元二次方程求根公式,一元n次方程

π的计算方法 如图,这是一个正五边形和它的外切圆。AD平分∠EDB,AC⊥交于BD与点C.已知外切圆的半径为5cm。求正五边形的周长? 根据题目可以求出∠EDB= ? = - 108 5 180 * 2 5) ( ∵AD为∠EDB角平分线 ∴∠ADC=∠EDA=108*(1/2)=54° ∵AD=5cm,∠ADC=54° ∴CD=cos54°*5cm ∴BD=2CD=2*cos54°*5cm ∴C[正五边形] =2*cos54°*5cm*5=50*cos54° 如图,这是一个正n边形和它的外切圆。AD平分∠EDB,AC⊥交于BD与点C.已知外切圆的半径为rcm。求正n边形的周长与它的外切圆直径之比?根据题目可以求出∠ EDB= ?- n n180 * 2) ( ∵AD为∠EDB角平分线

∴∠ADC=∠EDA=n n n 2180*2n 21*180*2)()(-=- ∵AD=rcm,∠ADC=n 2180*2-n )( ∴CD=r n *)2180*2-n cos()( ∴BD=2CD=2*r n *)2180*2-n cos()( ∴C[正五边形]=2*n **)2180*2-n cos(r n )( ∴π=n r n r n C C n *)2n 180*2)-(n cos(2*2**)2180*)2n ((cos =-=≈它外切圆直径 直径边形正圆(180单位为°)

)2180)2n (tan(*)2180)2n (tan(na n *)2180)2n (tan(2*a 5.0*)2180)2n (tan(5.0*)2180)2n (tan()2180)2n (tan(5.02180)2n (,180)2n (a 5.0,a n n a n n a C a n n G a n GH n a HG AH HG n FAG BAF AG n BAF HF AH AF H AF GH G AF FG AG AF n G n n AFG n -=-≈≈∴=-=-∴-=∴-==-=∠∴∠-=∠==∴∴⊥∴==直径边形周长外接正π直径为圆平方中点 为等腰三角形三线合一 的切线 为圆边形的内接圆。为正边形,圆已知;这是一个正边形一部分 为等腰△是正边形,△假设这是个正正多边形ΘΘΘΘΘ 二元一次方程的求根公式

非线性方程求根问题

计算机学院上机实践报告 一、目的 1.通过本实验,帮助加深对非线性方程求根方法的构造过程的理解; 2.能将各种方法编写为程序并上机实现; 3.比较各种方法在求解同一非线性方程根时,在收敛情况上的差异。 二、容与设计思想 1.用二分法求方程f(x)=x3-2x-5=0在区间[2 , 3]的根。 2.方程f(x)=2x3-5x2-19x+42=0在x=3.0附近有根,试写出其三种不同的等价形式以构成三种不同的迭代格式,再用简单迭代法求根,观察这三种迭代是否收敛。 三、使用环境 1. 硬件环境 微型计算机(Intel x86系列CPU)一台 2. 软件环境 Windows2000/XP操作系统 VC++6.0或其它的开发工具。 四、核心代码及调试过程 1.用二分法求方程f(x)=x3-2x-5=0在区间[2 , 3]的根主要代码: void bisect(double a,double b,int max_B) { double root, ya,yb,yroot; int i,actual_B; ya=f(a);yb=f(b); if(ya*yb>0) { printf("method failed!\n"); exit(0); } for(i=1;i<=max_B;i++) { root=(a+b)/2;yroot=f(root); //取当前含根区间的中点 if(yroot==0) { a=root;b=root;} else if(yb*yroot>0) //取含根区间为[a,(a+b)/2]

{ b=root;yb=yroot;} Else //取含根区间为[(a+b)/2,b] { a=root;ya=yroot;} if(fabs(b-a)b)) { printf("re_select a proper initial value x0!\n"); exit(0); } if(fabs(x1-x0)

小学四年级解方程的方法详解

小学四年级解方程的方法详解 方程:含有未知数的等式叫做方程。如4x-3=21,6x-2(2x-3)=20 方程的解:使方程成立的未知数的值叫做方程的解。如上式解得x=6 解方程:求方程的解的过程叫做解方程。 解方程的依据:方程就是一架天平,―=‖两边是平衡的,一样重! 1. 等式性质:(1)等式两边同时加上或减去同一个数,等式仍然成立; (2)等式两边同时乘以或除以同一个非零的数,等式仍然成立。 2. 加减乘除法的变形: (1) 加法:a + b = 和则 a = 和-b b = 和-a 例:4+5=9 则有:4=9-5 5=9-4 (2) 减法:被减数a –减数b = 差则: 被减数a = 差+减数b 被减数a-差= 减数b 例:12-4=8则有:12=8+4 12-8=4 (3) 乘法:乘数a ×乘数b = 积则: 乘数a = 积÷乘数b 乘数b= 积÷乘数a 例:3×7=21则有:3=21÷7 7=21÷3 (4) 除法:被除数a ÷除数b = 商则: 被除数a= 商×除数b 除数b=被除数a ÷商例:63÷7=9 则有:63=9×7 7=63÷9 解方程的步骤: 1、去括号:(1)运用乘法分配律;(2)括号前边是―-‖,去掉括号要变号;括号前边是―+‖,去掉括号不变号。 2、移项:法1——运用等式性质,两边同加或同减,同乘或同除;法2——符号过墙魔法,越过―=‖时,加减号互变,乘除号互变。 注意两点:(1)总是移小的;(2)带未知数的放一边,常数值放另一边。 3、合并同类项:未知数的系数合并;常数加减计算。 4、系数化为1:利用同乘或同除,使未知数的系数化为1。

实验二 非线性方程求根实验报告

实验报告 学院:电子信息工程 实验课程:计算方法 学生姓名: 学号: 专业班级:通信工程 实验二非线性方程求根 1 目的与要求 (1)进一步熟练掌握求解非线性方程的二分法与Newton迭代法。 (2)掌握二分法与Newton迭代法的算法,能运用程序设计语言和此方法编制软件求出任意指定一元三次方程在给定点附近的根。 2 实验内容 用二分法和Newton迭代法求方程 310 x x --=在 1.5 附近的根,精确到 3 10-,输出每次的迭代结果

并统计所用的迭代次数。 3 实验原理 (1)二分法实验原理 取[a,b]区间二等分的中点x1 =(a+b)/2 (1)若f(x1)=0,则x1是f(x)=0的实根。 (2)若f(a)f(x1)<0 成立,则x* 必在区间(a, x1)内,取a1=a,b1= x1;否则x*必在区间(x1,b)内,则取a1= x1,b1=b,这样,得到新区间[a1,b1],其长度为[a,b]的一半。 (3)如此继续下去,进行n次等分 (2)Newton迭代法实验原理 4 程序设计 (1)流程图 二分法程序流程图

Newton迭代法程序流程图

(2)程序代码 ①二分法求非线性方程根#include #include double fun1(double x) {

return x*x*x-x-1; } double fun2(double x1,double x2) { return (x1+x2)/2; } main() { int n=1; float a,b,c; printf("二分法求非线性方程的根\n"); scanf("a=%f,b=%f",&a,&b); if (fun1(a)*fun1(b)<0) { while(fabs(b-a)>1e-3) { c=fun2(a,b); if (fun1(a)*fun1(c)<0) { b=c;

计算方法实验一 方程求根

山西大学计算机与信息技术学院 实验报告 姓名学号专业班级 课程名称计算方法实验实验日期 成绩指导老师批改日期 实验名称实验一方程求根 一、实验目的 用各种方法求任意实函数方程f(x)=0在自变量区间[a,b]上,或某一点附近的实根。并比较方法的优劣。 二、实验方法 (1)二分法 对方程f(x)=0在[a,b]内求根,将所给区间二分,在分点x= 2a b 判断是否f(x)=0,若是,则有根x=(b+a)/2。否则,继续判断是否f(a)* f(x)<0,若是,则令b=x,否则令a=x、重复此过程直至求出方程f(x)=0在[a,b]中的近似根为止。 (2)迭代法 将方程f(x)=0等价变换为x=φ(x)形式,并建立相应的迭代公式x k+1=φ(x k)。 (3)牛顿法 若已知方程f(x)=0的一个近似根x0,是函数f(x)在点x0附近可用一阶泰勒多项式 p1(x)=f(x )+f`(x0)(x-x0)来近似,因此方程f(x)=0可近似表示为f(x0)+f`(x0)(x-x0)=0。设f`(x0)≠0,则x=x0-f(x0)/f`(x0)。则x作为原方程新的近似根x1,然后x1将作为x0带入上式。迭代公式为x k+1=x k -f(x k)/f`(x k)。 三、实验内容 (1)在区间[0,1]上用二分法求方程ex+10x-2=0的近似根,要求误差不超过0.5x10-3。 (2)取初值x0=0,用迭代公式,x k+1= 10 k x e- 2,(k=0,1,2···)求方程e x+10x-2=0的 近似根。要求误差不超过0.5x10-3。 (3)取初值x0=0,用牛顿迭代法求方程e x+10x-2=0(k=0,1,2···)的近似根。要求误差不超过0.5x10-3。 四、实验程序 #include #include using namespace std;

非线性方程求根

第二章非线性方程求根 线性方程是方程式中仅包含未知量的一次方项和常数项的方程,除此之外的方程都是非线性方程(nonlinear equation). 例如,大家熟知的“一元二次方程”就是一个非线性方程. 多元线性方程组的求解是数值计算领域的一个重要问题,在后续几章将专门讨论. 本章介绍求解非线性方程的数值方法,主要针对实数域,重点是单个非线性方程的求根问题. 2.1引言 2.1.1非线性方程的解 记要求解的单变量非线性方程为 f(x)=0(2.1) 其中函数f: ?→?. 一般而言,非线性方程的解的存在性和个数是很难确定的,它可能无解,也可能有一个或多个解. 例2.1 (非线性方程的解):分析下列非线性方程的解是否存在和解的个数. (1) e x+1=0. 此方程无解. (2) e?x?x=0. 此方程有一个解. (3) x2?4sinx=0. 此方程有两个解. (4) x3?6x2+5x=0. 此方程有三个解. (5) cosx=0. 此方程有无穷多个解. 在实际问题中,往往要求的是自变量在一定范围内的解,比如限定x∈[a,b]. 函数f一般为连续函数,则可记为f(x)∈C[a,b],C[a,b]表示区间[a,b]上所有连续实函数的集合. 假设在区间[a, b]上方程(2.1)的根为x?,也称x?为函数f(x)的零点. 方程的根可能不唯一,而且同一个根x?也可能是方程(2.1)的多重根. 定义2.1:对光滑函数f,若f(x?)=f′(x?)=?=f(m?1)(x?)=0,但f(m)(x?)≠0,则称x?为方程(2.1)的m重根. 当m=1时,即f(x?)=0,f′(x?)≠0时,称x?为单根. 对于多项式函数f(x),若x?为m重根,则f(x)可因式分解为 f(x)=(x?x?)m g(x) 其中g(x)也是多项式函数,且g(x?)≠0. 很容易验证,f(x?)=f′(x?)=?=f(m?1)(x?)=0,但f(m)(x?)≠0,即多项式方程重根的概念与定义2.1是一致的. 对一般的函数f,x?是方程(2.1)的重根的几何含义是,函数曲线在x?处的斜率为0,且在该点处与x轴相交. 非线性方程的一个特例是n次多项式方程(n≥2),根据代数基本定理可知,n次方程在复数域上有n个根(m重根计为m个根). 当n=1, 2时,方程的求解方法是大家熟知的. 当 n=3, 4时,虽然也有求根公式,但已经很复杂,在实际计算时并不一定适用. 当n≥5时,不存在一般的求根公式,只能借助数值求解方法来求根. 2.1.2问题的敏感性 根据问题敏感性的定义,这里需要考虑输入数据的扰动对方程的根有多大影响. 要分析敏感性首先应假设问题中的数据如何扰动,一种易于分析的情况是将非线性方程写成: f(x)=y 的形式,然后讨论y在0值附近的扰动造成的问题敏感性. 此时,求根问题变成了函数求值

计算方法-方程求根实验

实验四 方程求根实验 一. 实验目的 (1)深入理解方程求根的迭代法的设计思想,学会利用校正技术和松弛技术解决某些实际的非线性方程问题,比较这些方法解题的不同之处。 (2)熟悉Matlab 编程环境,利用Matlab 解决具体的方程求根问题。 二. 实验要求 用Matlab 软件实现根的二分搜索、迭代法、Newton 法、快速弦截法和弦截法,并用实例在计算机上计算。 三. 实验内容 1. 实验题目 (1)早在1225年,古代人曾求解方程020102)(23=-++=x x x x f 并给出了高精度的 实根368808107.1*=x ,试用Newton 法和弦截法进行验证,要求精度610-=ε,并绘制方程的图形。 答:A.Newton 法: a .编写文件Newton.m 、func4.m 内容如下所示:

b.运行,如下所示A为矩阵, 由上面可知,对于初值为5,运行7次即可得到所需的精度,验证结果为古人给出的解释正确的; c.作图,编写下面的文件photo1.m.然后运行即可: 注意下面中的x矩阵即为刚才计算出来的x系列,k为迭代的次数:

a.编写文件Chord.m内容如下所示: b.运行结果如下所示:

由上表可知,在精度为10^-6时有7位有效数字,古人的结果还是正确的 c.作图,在上面运行后,即运行newton法时写的photo1.m文件即可出现图像:

可以看到图中两条曲线基本重合; (2)取5.00=x ,用迭代法求方程x e x -=的根,然后用Aitken 方法加速,要求精度为 结果有4为有效数字。 答: a. 编写文件func7.m 和Aiken.m ,内容如下所示:

实验一 非线性方程求根

石家庄经济学院2014/2015学年第一学期 数值分析实验报告 班级: 5141090301 学号: 514109030105 姓名:张倩 指导教师: 张敬敏

实验一非线性方程求根 一、实验题目 1. 求方程f(x)=3x2-e x=0一个正根,并使误差不大于10-5。(p22第3题) 2. 计算√5,结果具有5位有效数字。 3. 求方程f(x)=x3-x-1=0在区间[1.0,1.5]内的一个实根,误差不大于10-5。(选做) 二、程序功能 1. 使用迭代法求方程f(x)=3x2-e x=0一个正根,并使误差不大于10-5。 2. 用牛顿法计算√5,结果具有5位有效数字。 3. 利用二分法求方程f(x)=x3-x-1=0在区间[1.0,1.5]内的一个实根,精度为10-5。 三、算法 算法1. 使用迭代法求方程f(x)=3x2-e x=0一个正根,并使误差不大于10-5。 算法2. 用牛顿法计算√5,结果具有5位有效数字。 for k=2,3,4….N do 1)compute x:x g(x) 四、重要标识符说明 程序1. 重要标识符说明 程序2. 重要标识符说明 Error确定有效位数,abs取绝对值,for 迭代次数 五、程序运行实例 在matlab 6.5环境中,运行程序1,结果如图1所示。

图1 程序1运行结果在matlab 6.5环境中,运行程序2,结果如图2所示。 图2 程序2运行结果六、源程序 程序1源程序: 程序2源程序: Error=1e-5; x=2; for k=2:10 xk=x; x=x/2+5/(2*x); if (abs(xk - x)<=Error) break; end end

数学解方程方法

如何解初中出现的几种方程 一 、一元一次方程解法步骤: 使方程左右两边相等的未知数的值叫做方程的解。 一般解法: 1.去分母:在方程两边都乘以各分母的最小公倍数(不含分母的项也要乘); 2.去括号:先去小括号,再去中括号,最后去大括号;(记住如括号外有减号的话一定要变号) 3.移项:把含有未知数的项都移到方程的一边,其他项都移到方程的另一边;移项要变号 4.合并同类项:把方程化成ax=b(a ≠0)的形式; 5.系数为成1:在方程两边都除以未知数的系数a ,得到方程的解x=b/a. 一元一次方程具体解题例题: 例1小船在静水中速度为12千米每小时,水流速度是3千米每小时。小船先从上游甲点顺流而下到乙点,又从乙点逆流而上到丙点(丙在甲的上游),两段行程共花费2小时,已知甲丙相距10千米,求甲乙相距多远?】 分析: 本题关键句为两段行程共花费2小时,就是甲->乙,乙->丙两段时间和是2小时。 上游 >>-------------->>-------->> 下游 丙 10 千米 甲 ? 乙 顺水船速=静水船速+水流速度...........船从甲到乙的速度是(12+3)千米每小时 逆水船速=静水船速- 水流速度......... 船从乙到丙的速度是(12-3)千米每小时 解:设甲乙相距距离为x 由题意得到这个方程 : 23 1210312=-+++x x 看看如何解这个方程,我们套用上面的步骤, 1.去分母2.去括号3.移项4.合并同类项5.系数为成1。这个方程应该先整理方程,在去分母,但是去分母之后没有括号,则这一步省略,然后移项,再合并同类项,最后系数化为1,所以说我们不要生搬硬套解一元一次方程的解法,该省则省,要灵活变通,活学活用。 23 1210312=-+++x x (整理方程)

实验3非线性方程求根问题

西华数学与计算机学院上机实践报告 课程名称:计算方法A年级:上机实践成绩: 指导教师:严常龙姓名: 上机实践名称:非线性方程求根问题学号:上机实践日期: 上机实践编号:1上机实践时间: 一、目的 1.通过本实验的编程练习,加深对非线性方程求根方法之二分法、简单迭代法、、牛顿迭代法等的构造过程的理解; 2.能将各种方法的算法描述正确地改编为程序并上机实现; 3.比较各种方法在求解同一非线性方程根时,在收敛情况上的差异。 二、内容与设计思想 自选求根问题,分别用二分法、简单迭代法、埃特金加速收敛法和牛顿迭代法求解其根,然后完成编程作业(注意把同一求根问题的几种不同方法放在一个程序之内)。以下求根问题供参考和选择,也可自行选择其他求根问题: 1.用二分法求方程f(x)=x3-2x-5=0在区间[2 , 3]内的根。 2.方程f(x)=2x3-5x2-19x+42=0在x=3.0附近有根,试写出其三种不同的等价形式以构成三种不同的迭代格式,再用简单迭代法求根,观察这三种迭代是否收敛及收敛的快慢。 3.用牛顿迭代法求方程f(x)=x3+2x2+10x-20=0在区间[1 , 1.5]上的根。 4.Cosx=x在区间[0 , /2]上的根。 三、使用环境 操作系统:Windows XP 软件环境:Microsoft Visual C++ 四、核心代码及调试过程 第一题:用二分法求方程f(x)=x3-2x-5=0在区间[2 , 3]内的根。 方程的近似解是:x=2.094552。 #include #include #define N 25 void main() { int k; float a[N],b[N],c[N],fa[N],fb[N],fc[N]; float x,y; printf("请输入a[0]的数值:"); scanf("%f",&x); printf("\n请输入b[0]的数值:"); scanf("%f",&y);

非线性方程求根

实验七 非线性方程求根 实验7.1(迭代法、初始值与收敛性) 实验目的:初步认识非线性问题的迭代法与线性问题迭代法的差别,探讨迭代法及初始值与迭代收敛性的关系。 问题提出:迭代法是求解非线性方程的基本思想方法,与线性方程的情况一样,其构造方法可以有多种多样,但关键是怎样才能使迭代收敛且有较快的收敛速度。 实验内容:考虑一个简单的代数方程 012=--x x 针对上述方程,可以构造多种迭代法,如 )1.7(1 2 1-=+n n x x )2.7(111n n x x + =+ )3.7(1 1+=+n n x x 在实轴上取初始值x 0,请分别用迭代(7.1)-(7.3)作实验,记录各算法的迭代过程。 实验要求: (1)取定某个初始值,分别计算(7.1)-(7.3)迭代结果,它们的收敛性如何?重复选取不同的初始值,反复实验。请自选设计一种比较形象的记录方式(如利用MATLAB 的图形功能),分析三种迭代法的收敛性与初值选取的关系。 (2)对三个迭代法中的某个,取不同的初始值进行迭代,结果如何?试分析迭代法对不同的初值是否有差异? (3)线性方程组迭代法的收敛性是不依赖初始值选取的。比较线性与非线性问题迭代的差异,有何结论和问题。 实验过程: 第一问: 针对迭代函数 11n n x x +=- 程序 disp(' 请输入初始迭代值为') x=[]; a=[];

b=[]; x(1)=input(''); for i=2:30 x(i)=x(i-1)^2-1; end for i=2:30 a(i-1)=x(i-1); b(i)=x(i); end a b i=1:30; plot(i,x) title('x(n+1)=x(n)^2-1') 数值实验结果及分析: 选择初始值为1时,每次迭代的波动情况如下:

计算方法非线性方程求根

计算方法第7章 非线性方程求根 本章主要内容: 1.区间二分法. 2切线法. 3.弦位法. 4.一般迭代法. 重点、难点 一、区间二分法 区间二分法是求方程f(x)=0根的近似值的常用方法。 基本思想:利用有根区间的判别方法确定方程根的区间[a,b] ,将有根区间平分为二;再利用有根区间的判别方法判断那一个区间是有根区间;重复上述步骤,直到小区间端点差的绝对值小于等于精度要求的数值,则用将上一区间的分半值作为方程的根的近似值。 区间二分法的计算步骤如下: 1. 计算区间端点的函数值f(a) , f(b)(不妨设f(a)<0,f(b)>0); 确定初始有根区间[a,b]. 2.二分有根区间[a,b],并计算)2( b a f + 取2 1b a x += 3.判断: 若0)(1=x f ,则方程的根为1x x =*; 若 0)(1>x f ,则有根区间为[]1,x a x ∈* ;令[]],[,111b a x a = 若 0)(1

12 ln ln )ln(---≥ ε a b n 确定应二分的次数。 例1 用区间二分法求方程0353 =+-x x 在某区间内实根的近似值(精确到0.001) 【思路】参见上述区间二分法的计算步骤 解 ∵f(1.8)=-0.168<0, f(1.9)=0.359>0 ∴f(x)在区间[1.8 ,1.9]内有一个根。 由公式 644.512 ln 001 .0ln 1.0ln 12ln ln )ln(=--=---≥ εa b n 取n=6, 计算结果列表如下: 则方程在区间[1.8,1.9]内所求近似值为x * ≈ x = 1.8328125 区间二分法的优点是计算程序简单,只要f (x )在区间[a,b]上连续,区间二分法就可使用,但区间二分法不能用来求偶次重根,由于区间二分法收敛比较慢,在实际计算中,区间二分法常用来求比较好的含根区间和初始近似值,以便进一步使用收敛更快的迭代法求出更精确的近似值。 迭代序列收敛阶的概念 设迭代序列{}n x 收敛于* x ,如果存在实数1≥p 与正常数c ,使得

一元二次方程求根公式

主讲:黄冈中学高级教师 一、一周知识概述 1、一元二次方程的求根公式 将一元二次方程ax2+bx+c=0(a≠0)进行配方,当b2-4ac≥0时的根为 . 该式称为一元二次方程的求根公式,用求根公式解一元二次方程的方法称为求根公式法,简称公式法. 说明:(1)一元二次方程的公式的推导过程,就是用配方法解一般形式的一元二次方程ax2+bx+c=0(a≠0); (2)由求根公式可知,一元二次方程的根是由系数a、b、c的值决定的; (3)应用求根公式可解任何一个有解的一元二次方程,但应用时必须先将其化为一般形式. 2、一元二次方程的根的判别式 (1)当b2-4ac>0时,方程有两个不相等的实数根; (2)当b2-4ac=0时,方程有两个相等的实数根; (3)当b2-4ac<0时,方程没有实数根. 二、重难点知识 1、对于一元二次方程的各种解法是重点,难点是对各种方法的选择,突破这一难点的关键是在对四种方法都会使用的基础上,熟悉各种方法的优缺点。 (1) “开平方法”一般解形如“”类型的题目,如果用“公式

法”就显得多余的了。 (2)“因式分解法”是一种常用的方法,一般是首先考虑的方法。 (3) “配方法”是一种非常重要的方法,一般不使用,但若能恰当地使用,往往能起到简化作用,思考于“因式分解法”之后,“公式法”之前。如方程;用因式分解,则6391这个数太大,不易分解;用公式法,也太繁;若配方,则方程化为,就易解,若一次项系数中有偶因数,一般也应考虑运用。 (4)“公式法”是一般方法,只要明确了二次项系数、一次项系数及常数项,若方 程有实根,就一定可以用求根公式求出根,但因为要代入(≥0)求值,所以对某些特殊方程,解法又显得复杂了。 2、在运用b2-4ac的符号判断方程的根的情况时,应注意以下三点: (1)b2-4ac是一元二次方程的判别式,即只有确认方程为一元二次方程时,才能确定a、b、c,求出b2-4ac; (2)在运用上述结论时,必须先将方程化为一般形式,以便确认a、b、c; (3)根的判别式是指b2-4ac,而不是 三、典型例题讲解 例1、解下列方程: (1); (2); (3). 分析:用求根公式法解一元二次方程的关键是找出a、b、c的值,再代入公式计算,

(完整版)小学五年级解方程计算步骤及对应的习题

小学五年级解方程计算步骤 小学阶段解方程计算题一般有以下几个步骤, 题型就按照下面的方法去做就可以了。 大家要认真把这几个步骤记住, 看到相关 .移项 所谓移项就是把一个数从等号的一边移到等号的另一边去。注意,加减法移项和乘除法 移项不一样, 移项规则: 当把一个数从等号的一边移到另一边去的时候, 要把这个数原来前 面的运算符号改成和它相反的运算符号,比如“ +”变成“ -”,或是“×”变成“÷” 请看例题: 加减法移项: x + 4 = 9 x-8=19 x=9-4 x=19+8 x=5 x=27 乘除法移项: 3x=27 x ÷6=8 x=27 ÷3 x=8 ×6 x=9 x=48 1. 常规题目,第一步 那一边。比如: ,把所有跟未知数不能直接运算的数字,转移到与未知数相反的等号 5x + 9 = 24 5x=24 - 9 5x=15 x=4 2. 第二种情况请记住,当未知数前面出现“-”或是“÷”的时候,要把这两个符号变成 “+”或是 “×” ,具体如何改变请看下面例题: 20 – 3x=2 20=2 + 3x --- ( 注意:也就是前面提过的移项问题,改变符号在方程里面就是移项 ) 20-2=3x 18=3x x=6 36÷4x = 3 36=3×4x -- ( 注意:也就是前面提过的移项问题,改变符号在方程里面就是移项 ) 36=12x x=3 3x - 4 = 8 3x=8+4 3x=12 x=3

3. 未知数在小括号里面的情况,注意,这种情况要分两种,第一种是根据乘法分配律先把小括号去掉 例如:3(3x+4) = 57 9x + 12=57 9x=57-12 9x=45 x=5 第二种情况就是,要看括号前面的那个数跟等号后面的那个数是否倍数关系,如果是倍数关系,可以互相除一下,当然,用这一种方法的前提就是等号另一边的数只有一个数字,如果有多个,则先要计算成一个。 例如 3(3x+4) = 57 3x+4 = 57 ÷3 3x+4 = 19 2(4x - 6) = 30+9-3 2(4x-6) = 36 4x –6=36 ÷2 3x = 19-4 3x = 15 4x-6=18 4x=18+6 4x=24 x=6 4. 第四种情况就是未知数在等号的两边都有,这种情况就是要把未知数都移项到一边,把其它的 数字移项到另一边,具体规则,如果两个未知数前面的运算符号不一样,要把未知数前面是“-”的移到“+”这一边来,如果两个未知数前面的运算符号一样,则要把小一点的未知数移到大一点的未知数那一边去。 例如: 3x +12 = 48 –6x 3x + 48 = 8 + 5x 3x + 6x = 48-12 48-8 = 5x –3x 9x = 36 x = 4 40 = 2x x = 20

相关主题
文本预览
相关文档 最新文档