2021年太原理工大学数值计算方法实验报告
2021年太原理工大学数值计算方法实验报告
1 / 16
2021年太原理工大学数值计算方法实验报告
本科试验汇报
课程名称: 计算机数值方法
试验项目: 方程求根、 线性方程组直接解
法、 线性方程组迭代解法、 代数插值和最
小二乘拟合多项式
试验地点: 行 勉 楼
专业班级: ******** 学号: *********
学生姓名: ********
指导老师: 李 誌 , 崔 冬 华
4 月 8 日
2021年太原理工大学数值计算方法实验报告
2021年太原理工大学数值计算方法实验报告
2 / 16
2021年太原理工大学数值计算方法实验报告
学生姓名
试验成绩
试验名称
试验一 方程求根
试验内容和要求
熟悉使用二分法、 迭代法、 牛顿法、 割线法等方法对给定方程进行根求解。选择上述方法中两种方法求方程: f(x)=x3+4x2-10=0在[1,2]内一个实根, 且要求满足精度|x*-xn|<×10-5
(1)了解非线性方程求根常见方法, 如二分法、 牛顿法、 割线法。
(2)加深对方程求根方法认识, 掌握算法。
(3)会进行误差分析, 并能对不一样方法进行比较。
试验原理
二分法: 假如要求已知函数 f(x) = 0 根 (x 解), 那先要找出一个区间 [a, b], 使得f(a)与f(b)异号。依据介值定理, 这个区间内一定包含着方程式根。求该区间中点m=(a+b)/2, 并找出 f(m) 值。若 f(m) 与 f(a) 正负号相同, 则取 [m, b] 为新区间, 不然取 [a, m]。反复第3步和第4步, 直到得到理想正确度为止。
割线法是利用牛顿迭代法思想,在根某个领域内, 函数有直至二阶连续导数, 而且不等于0, 则在领域内选择初值x0,x1,迭代均收敛。
(1) 在区间[m ,n]内输入初值x0, x1.
(2) 计算x2。x2=x1-f(x1)*(x1-x0)/(f(x1)-f(x0))
(3) x0=x1,x1=x2(4) 判定是否达成精度,若是输出x1, 若否 实施(2)
关键仪器设备
HP计算机
试验统计
// 方程求根(二分法).cpp : 定义控制台应用程序入口点。
//
#include ""
#include"iostream"
using namespace std;
class Text
{
public:
float x, y, a, b, c, n = 0;
void Getab()
{
cout << "请输入计算区间: (以空格隔开)" << endl;
cin >> a >> b;
}
float GetY(float x)
{
2021年太原理工大学数值计算方法实验报告
2021年太原理工大学数值计算方法实验报告
3 / 16
2021年太原理工大学数值计算方法实验报告
y = x*x*x + 4 * x*x - 10;
return y;
}
float Calculate(float a,float b)
{
c = (a + b) / 2;
n++;
if (GetY(c) == 0 || ((b - a) / 2) < )
{
cout << c <<"为方程解"<< endl;
return 0;
}
if (GetY(a)*GetY(c) < 0)
{
return Calculate(a,c);
}
if (GetY(c)*GetY(b)< 0)
{
return Calculate(c,b);
}
}
};
int main()
{
cout << "方程组为: f(x)=x^3+4x^2-10=0" << endl;
float a, b;
Text text;
();
a = ;
b = ;
(a, b);
return 0;
}
2022年太原理工大学数值计算方法实验报告 来自淘豆网m.daumloan.com转载请标明出处.