《工程常用算法》综合实践作业一

发布 2022-09-12 12:36:28 阅读 6530

哈尔滨工程大学机电工程学院。

综合实践大作业。

2023年 7 月 10 日。

作业名称: 非线性方程求根完成日期: 15 年 6月 1日。

已知方程,请分别用二分法、牛顿法和割线法求此方程的根。误差限取:。注意先确定出方程的有根区间。

f(0)=0+0-1<0

f(1)=1+2-e>0

所以在区间[0,1]内有根。

2、程序流程图。

三、完整的程序及简要的注释。

#include <>

#include <>

* f(x)函数 */

double f(double x)

return x*x*x + 2*x*x -exp(x);

* f(x)的导数 */

double fd(double x)

return 3*x*x + 4*x - exp(x);

* 二分法 */

* 输入参数:区间[a,b]、区间精度ex、函数精度ey */

void bipartition(double a, double b, double ex, double ey)

printf("二分法求根");

double x, fx; /中间点及其函数值

int k = 1计数器

while(1)k++;

* 牛顿迭代法 */

* 输入参数:初值x0、区间精度ex、函数精度ey */

void newtonroot(double x0, double ex, double ey)

double x1, fx1, fdx0;

int k = 1;

printf("牛顿法求根");

while(1)k++;

* 割线法 */

* 输入参数:初值x1,x2、区间精度ex、函数精度ey */

void gexian(double x1,double x2,double ex, double ey) while(fabs(x2-x1)>ex&fabs(f(x2))>ey);

printf("n3=%d",n3);

* 在主函数中运行各种求解方法 */

int main(void)

// 二分法计算

/ bipartition(0,1,0.000000000001,0.000000000001);

// 牛顿法

newtonroot(1,0.000000000001,0.000000000001);

//割线法。

gexian(0.5,1,0.000000000001,0.000000000001);

return 0;

四、程序运行结果。

1、计算公式及计算方法(手写在作业最后即可。

五、对不同实现方法的运行结果进行比较。

从收敛速度,精度比较即可】

六、问题与总结(必须给出自评成绩a/b/c/d)

【写出简要总结】

自评成绩:】

《工程常用算法》综合实践作业一

完成日期 2010年11月15日。小组成员 学号姓名。学号姓名。学号姓名。已知方程,请用二分法 牛顿法和割线法求此方程实根的近似值,使误差不超过0.0001。注意先确定出方程的有根区间。完成二分法 牛顿法 割线法 二 程序流程图。三 完整的程序。1 二分法 include include doubl...

工程常用算法综合实践作业

工程常用算法 综合实践作业三。完成日期 年月日。一 作业题目。用复化simpson 复化cotes和复化romberg公式计算,精确到小数点后12位,比较不同方法的计算结果。二 程序流程图。sinpson法。科斯特法。龙贝格法。三 完整的程序及简要的注释。辛普森法。function simpson ...

《工程常用算法》综合实践作业七

完成日期 2010年12月20日。小组成员 学号姓名。学号姓名。学号姓名。常微分初值问题如下 请用euler方法 四阶经典runge kutta格式和四阶adams方法求解。要求 任选一种方法,但希望得到 优秀 成绩的小组必须完成后两种求解方法。完成四阶经典runge kutta 四阶adams 二...