数值计算方法实验报告 - 图文
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。
课程名称:
实验地点:
专业班级:
学生姓名:指导教师:
本科实验报告
数值计算方法 计算机科学与技术学院506 学号:
王 峥
年 月 日
太原理工大学学生实验报告
学院名称 学生姓名 课程名称 计算机科学与技术 数值计算方法 专业班级 实验日期 实验题目 学号 成绩 实验一 方程求解 一、实验目的和要求 熟悉使用、迭代法、牛顿法、割线法等方法对给定的方程进行根的求解。选择上述方法中的两种方法求方程:二分法f(x)=x3+4x2-10=0在[1,2]内的一个实根,且要求满足精度|x*-xn|<0.5×10-5 二、主要设备 PC,Windows操作系统,VC++6.0编程平台; 三、实验内容和原理 函数f(x)在区间(x,y)上连续,先在区间(x,y)确定a与b,若f(a),f(b)异号,说明在区间(a,b)内存在零点,然后求f[(a+b)/2]。 假设F(a)<0,F(b)>0,a0,则区间(a,(a+b)/2)内存在零点,(a+b)/2≤b; 返回①重新循环,不断接近零点。通过每次把f(x)的零点所在区间收缩一半的方法,使区间内的两个端点逐步逼近函数零点,最终求得零点近似值。 四、操作方法与实验步骤 1. 二分法: #include #include #include int main() { double a=1.0, b=2.0; double x,s; while(1) { x=(a+b)/2; s=pow(x,3)+4*x*x-10; if (-0.000005 < s && s < 0.000005) { break; } else if(s < 0) { a=x; } else if(s > 0) { b=x; } printf(\ } printf(\ printf(\ return 0; } 2. 割线法: #include\#include\int main() { float c,a=1.0,b=2.0; while(1) { c=b-(b*b*b+4*b*b-10)*(b-a)/(b*b*b+4*b*b-(a*a*a+4*a*a)); if(fabs(b-c)<0.5*0.00001)break; b=c; printf(\ } printf(\ } 五、实验结果与分析 二分法 割线法 分析: 使用二分法和割线法均能计算出方程的根,但利用割线法要比二分法计算的次数少,并且能够较早的达到精度要求。 并且割线法程序代码量较少,精简明了。 六、讨论、心得 本次数值计算方法程序设计实验是在不断的习题练习中跳脱出来,直接面对实用性较强的程序代码编写。效果很好,不仅加深对二分法、割线法的理解,还加强了实际用运能力。将理论成功地转化成实践结果。 实验地点 北区多学科综合楼4506 指导教师 王峥
数值计算方法实验报告 - 图文.doc
将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印