Berechnung von pi mit der Monte Karlo Methode
import random
points=int(input('Anzahl der Wuerfe: '))
in_circle=out_circle=0
for i in range(points):
x=random.randrange(-100,100)
y=random.randrange(-100,100)
if (x*x+y*y>10000):
out_circle+=1
else:
in_circle+=1
pi_calc=4*in_circle/(in_circle+out_circle)
print('pi berechnet: ',pi_calc)
代码
import random
points=int(input('Anzahl der Wuerfe: '))
in_circle=out_circle=0
for i in range(points):
x=random.randrange(-100,100)
y=random.randrange(-100,100)
if (xx+yy>10000):
out_circle+=1
else:
in_circle+=1
pi_calc=4*in_circle/(in_circle+out_circle)
print('pi berechnet: ',pi_calc)
Berechnung des Integral ueber sin(x) in <0,pi>
import math
points=int(input('Anzahl der Wuerfe(Integral sin): '))
in_sinus=out_sinus=0
count=0
while count<points:
x=random.uniform(0, math.pi)
y=random.uniform(0, 1)
if (y<math.sin(x)):
in_sinus+=1
else:
out_sinus+=1
count+=1
flaeche=1.0*math.pi
sin_calc=(in_sinus/points)*flaeche
print('Integral sin: ',sin_calc)
代码
import math
points=int(input('Anzahl der Wuerfe(Integral sin): '))
in_sinus=out_sinus=0
count=0
while count<points:
x=random.uniform(0, math.pi)
y=random.uniform(0, 1)
if (y<math.sin(x)):
in_sinus+=1
else:
out_sinus+=1
count+=1
flaeche=1.0*math.pi
sin_calc=(in_sinus/points)*flaeche
print('Integral sin: ',sin_calc)