太原理工大学计算机数值方法实验报告,太原理工大学数值计算方法实验报告.doc...

文档介绍:

本科实验报告

课程名称: 计算机数值方法

实验项目: 方程求根、线性方程组的直接解

法、 线性方程组的迭代解法、代数插值与最

小二乘拟合多项式

实验地点: 行 勉 楼

专业班级: ******** 学号: *********

学生姓名: ********

指导教师: 李 誌 , 崔 冬 华

2016年 4 月 8 日

学生姓名

实验成绩

实验名称

实验一 方程求根

实验内容与要求

熟悉使用二分法、迭代法、牛顿法、割线法等方法对给定的方程进行根的求解。选择上述方法中的两种方法求方程:f(x)=x3+4x2-10=0在[1,2]内的一个实根,且要求满足精度|x*-xn|<0、5×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计算机

实验记录

1、二分法

// 方程求根(二分法)、cpp : 定义控制台应用程序的入口点。

//

#include "stdafx、h"

#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)

{

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) < 0、000005)

{

cout << c <

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;

text、Getab();

a = text、a;

b = text、b;

text、Calculate(a, b);

return 0;

}

2、割线法:

// 方程求根(割线法)、cpp : 定义控制台应用程序的入口点。

//

#include "stdafx、h"

#include"iostream"

using namespace std;

class A

{

public:

float x0,x1,y;

float GetY(float x)

{

y= x*x*x+4*x*x-10;

return y;

}

void GetNumber()

{

cout<

内容来自淘豆网www.taodocs.com转载请标明出处.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值