?? e181.m
字號:
%-----------------------------------------------------------------------
% Example 1.8.1: Estimating PI by Throwing Darts
%-----------------------------------------------------------------------
% Initialize
clc % clear command window
clear % clear variables
n = 1000; % number of darts
p = 0; % number of darts inside unit circle
seed = 1000; % select random sequence
e = zeros(n,1); % errors in estimate
s = 3; % size of square mat
% Generate estimate with random numbers
fprintf ('Example 1.8.1: Estimating PI by Throwing Darts\n');
randinit(seed);
for i = 1 : n
z = randu (2,1,-s/2,s/2);
r = norm(z,2);
if r <= 1
p = p + 1;
end
q = s^2*p/i;
e(i) = q - pi;
end
% Display results
show ('Number of darts',n)
show ('Final estimate of PI',q)
graphmat (e,'Error in Estimate of PI','number of darts',...
'error')
%-----------------------------------------------------------------------
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -