Python :: Aufgabe #223 :: Lösung #1

3 Lösungen Lösungen öffentlich
#223

Stochastische Ermittlung der Eulerschen-Zahl

Anfänger - Python von hollst - 12.04.2019 um 09:37 Uhr
Wir betrachten folgendes Zufallsexperiment: Aus einer Menge reeller und gleichverteilter Zahlen {X} mit 0 <= x < 1.0
ziehen wir solange Zahlen x1, x2 ... xn bis deren Summe >= 1.0 ist. n ist dann das Ergebnis eines Zufallsexperimentes.
Wir müssen mindestens zweimal ziehen, den ein einzelnes Zufalls-x ist ja immer kleiner als 1.0.

Die Frage lautet: Wie groß ist n im Mittel?

Hinweis: Laut Theorie ist n = 2.718281828459045... (= e). Nun gut, grau ist alle Theorie, wir wollen sehen, ob der Computer
(in etwa) der gleichen Meinung ist.

Viel Spaß!
#1
vote_ok
von jigga (4260 Punkte) - 13.04.2019 um 09:29 Uhr
Quellcode ausblenden Python-Code
import random, math
from decimal import *

getcontext().prec = 50

n_all = 0
count = int(input("Anzahl Durchlaeufe: "))

for i in range(count):
	x = 0.0
	n = 0
	while (x < 1):
		x += random.random()
		n += 1
	n_all += n
print("Zufallsexperiment: ", Decimal(n_all/count))
print("Eulersche Zahl   : ", Decimal(math.e))
print("Abweichung       : ", str(100*abs(1-(n_all/count/math.e))) + "%")

Kommentare:

Für diese Lösung gibt es noch keinen Kommentar

Bitte melden Sie sich an um eine Kommentar zu schreiben.
Kommentar schreiben