[置顶] 【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
%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
相关文章推荐
- [置顶] 【算法 机器学习】MATLAB、R、python三种编程语言实现简单线性回归算法比较
- 两种计算自然对数的算法比较
- 聚类方法:DBSCAN算法研究(3)--C++代码实现及与matlab实例结果比较
- matlab实现炉温模糊控制器设计与仿真和PID控制器仿真比较详解_智能计算期末3
- Java实现计算圆周率π的两种方法
- 比较洗牌算法的两种实现方法
- <编程>比较两种素数表生成算法+计算程序运行时间+通过CMD重定向测试程序
- 最小生成树两种算法比较与实现
- [置顶] 【matlab 图像处理】五种边缘检测算法比较
- 两种计算自然对数的算法比较
- 两种计算自然对数的算法比较
- 根据邻接计算有向图的可达矩阵的算法及其MATLAB实现
- [置顶] 【matlab dijkstra单源最短路径算法】dijkstra单源最短路径算法实现
- 多级树集合分裂(SPIHT)算法的过程详解和Matlab实现(5)编码过程——精细扫描
- 【测试】两种数据库,四种分页算法的效率比较
- 两种AOP实现方式的性能比较
- 一个无聊男人的疯狂《数据结构与算法分析-C++描述》学习笔记 习题2.8 随机数组的三种生成算法(补) 将bash的实现翻译成比较纯正的bash风格
- K-邻点平均算法 ,如何在matlab中实现?
- 两种实现事务方法的比较
- 【测试】两种数据库,四种分页算法的效率比较