Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
21
Task/Monte-Carlo-methods/XPL0/monte-carlo-methods.xpl0
Normal file
21
Task/Monte-Carlo-methods/XPL0/monte-carlo-methods.xpl0
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
code Ran=1, CrLf=9;
|
||||
code real RlOut=48;
|
||||
|
||||
func real MontePi(N); \Calculate pi using Monte Carlo method
|
||||
int N; \number of randomly selected points
|
||||
int I, X, Y, C;
|
||||
def R = 10000; \radius of circle
|
||||
[C:= 0; \initialize count of points in circle
|
||||
for I:= 0 to N-1 do
|
||||
[X:= Ran(R);
|
||||
Y:= Ran(R);
|
||||
if X*X + Y*Y <= R*R then C:= C+1;
|
||||
];
|
||||
return float(C)*4.0 / float(N); \Acir/Asqr = pi*R^2/4*R^2 = pi/4
|
||||
];
|
||||
|
||||
[RlOut(0, MontePi( 100)); CrLf(0);
|
||||
RlOut(0, MontePi( 10_000)); CrLf(0);
|
||||
RlOut(0, MontePi( 1_000_000)); CrLf(0);
|
||||
RlOut(0, MontePi(100_000_000)); CrLf(0);
|
||||
]
|
||||
Loading…
Add table
Add a link
Reference in a new issue