1、题题 目 :目 : 非线性方程求解算法的程序设计及比对非线性方程求解算法的程序设计及比对 摘要 由于五次及其以上代数方程式大多不能用代数公式求解非线性方程的解. 或者求解非常复杂。而在工程和科学技术中许多问题常常归结为求解非线性方 程式问题.所以需要研究非线性方程的数值解法的问题是非常重要.来适应我们 社会的需要. 本课题主要介绍非线性方程的数值解法是直接从方程出发,逐步缩小根的 存在区间,或逐步将根的近似值精确化,直到满足问题对精度的要求,主要的 方法有二分法,迭代法,牛顿法,弦截法等。并写出这几种非线性方程的数值 解法的算法和程序及其优缺点和计算条件. 关键词关键词 二分法;牛顿迭代法;弦
2、截法法;程序框架图;C 语言编程 目录目录 引言引言 . 1 第一章第一章 非线性方程求解算法非线性方程求解算法 2 1.1 二分法 2 1.1.1 二分法的简介 2 1.1.2 二分法的原理 2 1.1.3 二分法的算法 3 1.2 不动点迭代法 4 1.2.1 不动点迭代法的简介 . 4 1.2.2 不动点迭代法的几何意义 . 4 1.2.3 不动点迭代法的算法 . 5 1.3 牛顿迭代法 6 1.3.1 牛顿迭代法的简介 . 6 1.3.2 牛顿迭代法的原理 . 6 1.3.3 牛顿迭代法的算法 . 7 1.4 弦截法 8 1.4.1 弦截法的简介 . 8 1.4.2 弦截法的原理 .
3、8 1.4.3 弦截法的算法 . 9 第二章第二章 非线性方程求解的非线性方程求解的 C 语言算法语言算法对比对比 . 11 2.1 C 语言求解非线性方程的根 . 11 2.1.1 构造非线性方程迭代公式 11 2.1.2 计算迭代公式 11 2.2 C 语言算法比较分析 . 14 参考文献参考文献 16 附录附录 A A . 17 附录附录 B B . 18 1 引言引言 代数方程求根问题是一个古老的数学问题,早在 16 世纪就得到了三次、四 次方程的求根公式.一般(五次及其以上)代数方程式不能用代数公式求解.在工 程和科学技术中许多问题常常归结为求解非线性方程式问题.因此,需要研究用 数
4、值方法求得满足一定精度的代数方程式的近似解. ( )0fx根的数值方法,其中( )fx是连续的称为非线性方程,此类方程除少 数情形外,只能求近似解. 例如, 2 0axbxc,其根为 2 1 , 2 4 2 bba c x a 像这种方程是可以直 接的方法求出解析解.但对于对于多项式方程 1 011 0 nn n n a xa xaxa 当5n 时,就不能得到解析解.对于更一般的情况(如超越方程) sin() 2 x x e 就更难求得解析解了,更就不存在根的解析表达式,在科学研究和科学计算 中常常碰到非线性方程求解问题.非线性方程的解一般不能解析求出.所以数值 解法显得非常重要,而数值解法在实际中的实现则更为重要. 本课题主要是应用数值解法结合计算机语言来求解非线性方程的解,其中 包括的数值解法有二分法、迭代法、牛顿法、弦截法等.主要用的计算机语言 C 语言、等.正好符合用计算机