二分法c语言c语言二分法求根

二分法c语言  时间:2021-07-03  阅读:()

用C语言编程二分法求解方程组

#include<stdio.h> #include<math.h> #define EQUATION(A, B, m, n, x) (A*pow(x, m) + B*pow(x, n) - 1)/* 定义方程*/ double A, B, m, n;/*方程参数*/ void find_extent(double *x1, double *x2)/*找出根所在的区间*/ { double i = 0, j = 0; *x1 = 0; if(EQUATION(A, B, m, n, 0) > 0) { while(EQUATION(A, B, m, n, ++i) > 0 && EQUATION(A, B, m, n, --j) > 0); *x2 = EQUATION(A, B, m, n, i) <= 0 ? i : j; } else { while(EQUATION(A, B, m, n, ++i) < 0 && EQUATION(A, B, m, n, --j) < 0); *x2 = EQUATION(A, B, m, n, i) >= 0 ? i : j; } } /*二分法解方程*/ /*输入参数:根所在区间[x1, x2], 和精度*/ double get_result(double x1, double x2, double uracy) { double x = (x1 + x2) / 2; while(fabs(EQUATION(A, B, m, n, x)) > uracy) { if(EQUATION(A, B, m, n, x) * EQUATION(A, B, m, n, x1) > 0) x1 = x; else x2= x; x = (x1 + x2)/2; } return x; } int main() { double x; double x1,x2; scanf("%lf%lf%lf%lf", &A, &B, &m, &n); find_extent(&x1, &x2); x = get_result(x1, x2, 0.00001); printf("%lf", x); return 0; }

C语言二分法解方程,急!谢谢!

本题的一个完整的c程序如下,程序在win-tc下调试通过,结果正确。

#include #include #include #include int n; double c[16]; double Func(double); int BisectRoot(double,double,double,double,double *,int,int *); int main() { int i,m; double a,b,h,eps,*x; printf("Please input integer k: "); scanf("%d",&n); /*方程根的个数的预估值*/ printf("Please input %d coefficients one by one: ",n+1); for(i=0;i<=n;i++) scanf("%lf",&c[i]); x = (double*)calloc(n,sizeof(double)); /*开辟内存空间*/ if(x == NULL) { printf("内存分配失败 "); exit(1); } a = -10; /*区间起始端点*/ b = 10; /*区间终止端点*/ h = 0.1; /*步长*/ eps = 1.e-5; /*要求达到的精度*/ BisectRoot(a,b,h,eps,x,n,&m); /*调用二分法函数*/ printf("The roots between %2.0f and %2.0f are: %d ",a,b,m); printf("They are: "); for(i = 0;ib+h/2)||(*m==n)) return(1); if(fabs(y)0) /*如果对应根乘积大于零,说明该区间内没有根*/ { y = y1; z = z1; continue; } while(1) /*如果本while循环执行,说明逐步扫描小区建z和z1间有根*/ { if(fabs(z1-z)C语言中二分法的编程#include #include void main() {int x1,x2,x,f1,f2; f1=x1*x1*x1-3*x1*x1-2*x1-6; f2=x2*x2*x2-3*x2*x2-2*x2-6; do {scanf("%d%d",x1,x2); }while(f1*f2>0); do {x=(x1+x2)/2; f=x*x*x-3*x*x-2*x-6; if(f*f1<0) {x2=x; f2=f;} if(f*f2<0) {x1=x; f1=f;} }while(fabs(x1-x2)>0.001); printf("%d",x);}

用C语言,运用二分法,求函数零点。

#include<stdio.h> #include<math.h> typedef double(*fun)(double xx);//函数指针 #define e 0.000001 //误差 void eff(double a,double b,fun hs)//二分法 {int i=0; while(fabs(hs(a)-hs(b))>e&&fabs(a-b)>e){i++; if(hs(a)*hs((b+a)/2)>0){ a=(a+b)/2; printf("迭代第%d次: %f ",i,a); } else { b=(a+b)/2; printf("迭代第%d次: %f ",i,b); } } } double hs1(double xx)//函数f(x)=x^3+x^2-3x-3 {return xx*xx*xx+xx*xx-3*xx-3;} double hs2(double xx)//函数f(x)=lnx+x {return log(xx)+xx;} void main() { printf("用二分法求方程x^3+x^2-3x-3=0在1.5附近的根 "); eff(1.0,2.0,hs1); printf("用二分法求方程lnx+x在0.5附近的根 "); eff(0.0,1.0,hs2); }

C语言用二分法求解的具体程序

double power(double x,int n) { int i; double result=1; for (i=0;i<n;i++) result*=x; return result; } main() { double lx,rx,x,s; lx=-2;rx=5; do { x=(lx+rx)/2; s=power(x,6)+power(x,5)*5+power(x,4)*3+power(x,3)-x*x*7+7*x-20; if (s>0) rx=x; else lx=x; } while (fabs(s)>0.000001); printf("%f ",x); }

c语言二分法求根

#include #include double fun(double x) {return 1.0*x*x-10;} int main() {double x1,x2; //此处有两个错误,double 类型的输入输出格式是lf,判断条件是x1x2处的函数值异号而不是同号 if ((scanf("%lf,%lf",&x1,&x2))&&(fun(x1)*fun(x2)<=0)&&(x10) //if判断后执行的不是一条语句就要用大括号括起来 {x1=(x1+x2)/2 ;continue;} if(fun((x1+x2)/2)*fun(x2)>0) {x2=(x1+x2)/2 ;continue;} } //循环条件也有问题,当某一个端点的值足够小时就表示找到了,就要退出循环 while (!(fabs(fun(x1))<=1E-6||(fabs(fun(x2))<=1E-6))); printf("%f %f",x1,x2); printf("%f %f",fun(x1),fun(x2));} else printf("error! "); return 0; }

wordpress公司网站模板 wordpress简洁高级通用公司主题

wordpress公司网站模板,wordpresss简洁风格的高级通用自适应网站效果,完美自适应支持多终端移动屏幕设备功能,高级可视化后台自定义管理模块+规范高效的搜索优化。wordpress公司网站模板采用标准的HTML5+CSS3语言开发,兼容当下的各种主流浏览器: IE 6+(以及类似360、遨游等基于IE内核的)、Firefox、Google Chrome、Safari、Opera等;同时...

热网互联33元/月,香港/日本/洛杉矶/韩国CN2高速线路云主机

热网互联怎么样?热网互联(hotiis)是随客云计算(Suike.Cloud)成立于2009年,增值电信业务经营许可证:B1-20203716)旗下平台。热网互联云主机是CN2高速回国线路,香港/日本/洛杉矶/韩国CN2高速线路云主机,最低33元/月;热网互联国内BGP高防服务器,香港服务器,日本服务器全线活动中,大量七五折来袭!点击进入:热网互联官方网站地址热网互联香港/日本/洛杉矶/韩国cn2...

腾讯云轻量服务器老用户续费优惠和老用户复购活动

继阿里云服务商推出轻量服务器后,腾讯云这两年对于轻量服务器的推广力度还是比较大的。实际上对于我们大部分网友用户来说,轻量服务器对于我们网站和一般的业务来说是绝对够用的。反而有些时候轻量服务器的带宽比CVM云服务器够大,配置也够好,更有是价格也便宜,所以对于初期的网站业务来说轻量服务器是够用的。这几天UCLOUD优刻得香港服务器稳定性不佳,于是有网友也在考虑搬迁到腾讯云服务器商家,对于轻量服务器官方...

二分法c语言为你推荐
开票系统防伪税控开票系统怎么安装?策略组简述组策略的概念 急急急tvosTVOS智能电视操作系统如何越狱备忘录模式Java中常用的设计模式有哪些?请详细说明一下工厂模式。jqlJQL JINQILIN注册过商标吗?还有哪些分类可以注册?丁奇请全面剖析一下黑胡子丁奇这个人物。spawning为什么编译和运行vc++ 时会出现Error spawning c1.exe 的错误mediasRES代表什么意思qq业务中心QQ业务办理mac地址过滤无线路由器,Mac地址过滤是什么意思,怎么用?
企业虚拟主机 国外域名 美国和欧洲vps 流媒体服务器 便宜建站 美国php空间 申请空间 华为网络硬盘 全站静态化 空间论坛 asp免费空间申请 国外代理服务器软件 1g空间 网站加速软件 注册阿里云邮箱 电信宽带测速软件 阿里云邮箱怎么注册 xshell5注册码 winserver2008 香港打折信息 更多