Monte-Carlo Algorithmen sind Algorithmen, die von Zufallszahlen Gebrauch machen und in Naturwissenschaft und Technik einen breiten Anwendungsbereich finden. Mit ihrer Hilfe können Simulationen durchgeführt und Größen angenähert werden, die sonst nur mit sehr viel höherem Aufwand berechenbar wären. Sie sollen in dieser Aufgabe einmal diesen Ansatz ausprobieren und ihn benutzen um die Kreiszahl π anzunähern. 

1. 
Schreiben Sie ein Unterprogramm random_list(n, a, b), das eine Liste mit n (float) Zufallszahlen zurück gibt, die in dem Intervall [a, b) gleichverteilt sind. 

2. 
Schreiben Sie ein Unterprogramm mc_approxPi(n), das n Paare von Zahlen (xi, yi), xi, yi [0, 1) (also 2D Punkte) erzeugt, die jeweils im Interval [0,1) gleichverteilt sind (also sind die Koordinaten der Punkte gleichverteilt im Quadrat [0, 1) × [0, 1) ). Prüfen Sie, wie viele dieser Paare die Bedingung
        x 2i + y i2 1
erfüllen. Teilen Sie diese Anzahl durch die Zahl n/4, um eine Schätzung für den Wert von π zu erhalten und geben Sie diesen zurück. Benutzen Sie Ihr Unterprogramm um eine Schätzung für π mit n = 10000 auf der Konsole auszugeben. 

3. 
Erklären Sie, warum wir in Aufgabenteil 2 eine Schätzung für π erhalten.

4. Schreiben Sie ein Unterprogramm
mc_error(m), das m solcher Schätzungen durchführt. Hierbei soll die erste Schätzung mit n = 25 Zahlenpaaren durchgeführt werden und die Anzahl der Zahlenpaare bei den darauffolgenden Schätzungen jeweils vervierfacht werden. Berechnen Sie bei jeder Schätzung den Fehler, also die Abweichung zum wahren Wert von π. Geben Sie die so berechneten Fehler in einer n-elementigen Liste zurück. Können Sie in der Liste (z.B. für m = 6) das (ungefähre) Verhalten des Fehlers erkennen ? 

Start time:
Fr 01 Dez 2017 15:13:13
End time:
Do 07 Dez 2017 14:00:29
General test timeout:
10.0 seconds