您的位置:首页 > 其它

蒙特卡洛法求圆周率pi

2016-03-19 11:07 246 查看
思路:产生[-1,1]之间的随机点,计算随机点落到半径为1的圆内的个数与所有随机点个数之比,再乘以4就是圆周率
xy=rand(2,1000000)*2-1;
sqr=xy(1,:).^2+xy(2,:).^2;
incircle=find(sqr<=1);
outcircle=find(sqr>1);
length(find(sqr<=1))/1000000*4
xy(incircle);
hold on
plot(xy(1,incircle),xy(2,incircle),'.r');
plot(xy(1,outcircle),xy(2,outcircle),'.b');
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: