如何编程求解如下积分式?(√1+x*x√)表示1+x*x都在根号下面。
∫x*exp(x*x+x*(√1+x*x√)/(x+(√1+x*x√))dx.
非常感谢,大概给我个思路也行。
∫x*exp(x*x+x*(√1+x*x√)/(x+(√1+x*x√))dx.
非常感谢,大概给我个思路也行。
解决方案 »
- 关于 ON_COMMAND_RANGE 的机制
- SQL sever 数据库查询使用的问题
- 求救!vc++编写的通过wmi连接远程主机的程序出现“rpc服务器不可用”或“拒绝访问”的错误,如何解决?
- 高手进来!!!怎样从IDispatch转换成已知对象?
- 请帮忙
- UDP怎样实现异步和线程池。
- 奇怪!!!!!!!
- 我在跟踪调试时出现了 "Can't trace into system DLLs."为什么?????(100分)
- dblib 是什么啊????
- 可否用MODEM实现来电显示,请各位高手近来帮下忙!一定给分的!1
- 我有一个VC6程序原来连access没错,然后改为sql server 2000就不能Select值了???
- vc.net 中如何把继承的按钮控件放到对话框中。
∫x*exp(x*x+x*(√1+x*x√))/(x+(√1+x*x√))dx
定积分就是求面积吧,你把表达式应用到坐标系中,求出一系列给定x所对应的y值然后用y乘以x的区间(如果区间足够小可以不用乘),再把这一系列的值加起来,就得到积分值了,至于积分上限是无穷大的问题,如果增加x的值你的积分结果不怎么变化了那么就差不多了。
另外你的被积函数写的不是很清楚,能不能写个清楚些的?
x从0到正无穷;
x=0;
n=极小量;(这个值如何确定?)
for(x=0;;x+=n)
y+=x*exp(x*x+x*(√1+x*x√))/(x+(√1+x*x√));
是不是?
这样的话对其实对任何被积函数都可行了?
#include "math.h"
#define PI 3.1415926main()
{
long double n = 0.000001;
long double sum = 0;
long double x = 0;
long double y = 0;
for(x = -PI ; x < PI; x += n)
{
y=cos(x);
y *= n;
sum += y ;
}
}
这是求cos的积分算法,应该得0的,实际上得不了0,有些误差不过很小的。对于一般工程计算足够了。
现在这个积分式类似-sin(PI)+sin(-PI)这样是不是不大可能?
求出一系列给定x所对应的y值然后用y乘以x的区间(如果区间足够小可以不用乘),
不是不用乘,而是必须得乘以积分区间。
sorry
另外实际上没有你想想的那么大,积分结果计算出来相差不大就可以了。
那么,何时截止?n,n-1为下标。为表述方便。
例:
if(yn-y(n-1)<极小量)
stop;
可以交个朋友?
MSN:[email protected]
QQ:15211366。