您的位置:首页 > 编程语言 > MATLAB

[置顶] 【matlab 圆周率计算】matlab 求圆周率的两种算法实现比较

2017-06-13 09:35 531 查看
%author:laidefa

%data:2014-09-19

%丘德诺夫斯基公式求圆周率

function mpi=qdnfsj(m)

i=m;

s=13591409;

for n=1:i

A=(factorial(6*n)(13591409+54514013*n))/(factorial(3*n)*factorial(n)^3(-640320)^(3*n));

s=s+A;

end

mpi=(426880*sqrt(10005))/s;

end

% % %调用例子

% clc,clear

% mpi=qdnfsj(20);

% vpa(mpi,50)

ans =

3.1415926535897411575604110112180933356285095214844

%author:laidefa

%data:2014-09-19

%function:蒙特卡罗方法求圆周率

function [api]=montcpi(n)

format long;

m=0;

x=2*rand(n,2)-1;

for i=1:n

if x(i,1)^2+x(i,2)^2<=1

m=m+1;

end

end

api=4*m/n;

% %调用例子

% clc,clear

% [api]=montcpi(19999999);

%vpa(api,50)

ans =

3.1417683570884178401172448502620682120323181152344
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: