作者a9069 (绿茶微糖)
站内Programming
标题一个积分的code问题...
时间Fri May 21 18:48:37 2010
#include "stdafx.h"
#include <cmath>
#include <iostream>
using namespace std;
double z = 0;
double Normal(double a ,double b , double c)
{
double f = exp(-pow(a-b,2)/(2*c*c))/(pow(6.28, 0.5)*c);
return f;
};
int _tmain(int argc, _TCHAR* argv[])
{
for(int i=0 ; i<10001;i++)
{
double c = i/10000;
z = z + i/10000*Normal(c,0,1) ;
}
cout<<z;
system("pause");
return 0;
}
如题 我是要计算出 常态分配的机率分布与积分结果
Please calculate
∫_0^1??1/(√2π σ) e^(-(?(x-μ)?^2/(2σ^2 ))) ?
Note, e(x) can be obtained by calling cmath function exp(x).
也就是积出Normal(0,1) x= 0~1的结果
答案应该是0.34
但我的是0.24
想说应该都没错吧= = ...看了又看不知错在哪
旁观者清
请各位大大指点小弟一下
感激不尽啊!!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.140.247
1F:推 LPH66:你没错 因为你在算下和 140.112.28.92 05/21 18:50
2F:→ LPH66:用程式做数值积分的话辛普森法可以看看 140.112.28.92 05/21 18:50
3F:→ LPH66:(稍微学些微积分就会知道下和其实并不怎麽准 140.112.28.92 05/21 18:51
4F:→ LPH66: 同样的上和也不一定准) 140.112.28.92 05/21 18:51
5F:→ LPH66:说起来这个应该不是下和 而是左端点矩形 140.112.28.92 05/21 18:52
6F:→ a9069:那cmath里有包含积分的内建运算式吗??140.113.140.247 05/21 18:56
7F:→ a9069:想说能不能直接运用cmath的功能140.113.140.247 05/21 18:56
8F:→ MOONRAKER:没有。 59.120.168.228 05/21 19:31
10F:推 kangeroo:第1个 i/10000 -> 1/10000.0 125.227.129.71 05/25 19:29
11F:→ kangeroo:第2个 i/10000 -> 1/10000.0 (不是i) 125.227.129.71 05/25 19:30