| 查看: 638 | 回复: 0 | ||
[求助]
积分编程运行结果出现错误y1和y2=-1.#IND00是怎么回事
|
|
#include<stdio.h> #include <math.h> #define PI 3.14159 double b1,K; double integral(double(*fun)(double x),double a,double b,int n) { double s,h,z; int i; s=(fun(a)+fun(b))/2; h=(b-a)/n; /*积分步长*/ for(i=1;i<n;i++) s=s+fun(a+i*h); z=s*h; return z;/*返回积分值*/ } double f(double x) { return((K-b1*(pow(K,2)-pow(x,2))/2)/sqrt(pow(x,2)-pow((K-b1*(pow(K,2)-pow(x,2))/2),2))); /*修改此处可以改变被积函数*/ } main() { double y,y1,L,K,jd; printf("请分别输入L和K的值:\n" ;scanf("%1f %1f",&L,&K); b1=4/(2*K+1); while(fabs(y1)>0.01) { b1=b1+0.001; y=integral(f,0.5,K,10000);/*修改此处可以改变积分上下限和步长*/ y1=L-2*y; jd=acos(K*(2-b1*K)+b1/4)*180/PI; } printf("b1=%f\n y=%lf\n y1=%lf\n jd=%lf\n",b1,y,y1,jd); } 看网上有人说是非法运算溢出什么的,但是我把b1的初值再加上0.001就没有为0的情况了,结果还是出现那种情况,求高手指点 |
» 猜你喜欢
评审有感
已经有31人回复
提交了我也来说说感想
已经有12人回复
青B发送上会通知了吗
已经有9人回复
西安交大新媒学院副院长用撤稿论文结题
已经有6人回复
论文撤稿了
已经有8人回复
博士申请
已经有7人回复
化学专业申博
已经有4人回复
河北省自然科学基金
已经有9人回复
某211大学教师把个人教师官方主页改成:我跑了我跑了我跑了!官宣跑路!
已经有5人回复
26/27申博自荐
已经有9人回复












;
回复此楼
点击这里搜索更多相关资源