profil:klasse10:abschnitt-10-1-2
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
profil:klasse10:abschnitt-10-1-2 [2022/01/22 15:36] – [Monte-Carlo-Methode] lutz | profil:klasse10:abschnitt-10-1-2 [2022/01/28 10:18] (aktuell) – [Regula Falsi] lutz | ||
---|---|---|---|
Zeile 36: | Zeile 36: | ||
<WRAP box round> | <WRAP box round> | ||
* Eingabe Intervallgrenzen $a$ und $b$ mit $f(a) \cdot f(b) < 0$ | * Eingabe Intervallgrenzen $a$ und $b$ mit $f(a) \cdot f(b) < 0$ | ||
- | * Eingabe minimale | + | * Eingabe minimale |
* Solange $\vert a-b \vert > l$ ist: | * Solange $\vert a-b \vert > l$ ist: | ||
* $m = \dfrac{a+b}{2}$ | * $m = \dfrac{a+b}{2}$ | ||
Zeile 142: | Zeile 142: | ||
<WRAP box round> | <WRAP box round> | ||
* Eingabe Intervallgrenzen $a$ und $b$ mit $f(a) \cdot f(b) < 0$ | * Eingabe Intervallgrenzen $a$ und $b$ mit $f(a) \cdot f(b) < 0$ | ||
- | * Eingabe minimale | + | * Eingabe minimale |
* Solange $\vert a-b \vert > l$ ist: | * Solange $\vert a-b \vert > l$ ist: | ||
* $x_f = a - \dfrac{f(a) \cdot (b-a) }{f(b)-f(a)}$ | * $x_f = a - \dfrac{f(a) \cdot (b-a) }{f(b)-f(a)}$ | ||
Zeile 264: | Zeile 264: | ||
===Der Versuch=== | ===Der Versuch=== | ||
Für den Versuch benötigt man viele Stäbchen (Nadeln, Steichhölzer) der Länge d. Zunächst zeichnet man auf ein Blatt Papier parallele Linien, die den Abstand 2d haben. Danach wirft man die Streichhölzer zufällig auf das Blatt Papier. | Für den Versuch benötigt man viele Stäbchen (Nadeln, Steichhölzer) der Länge d. Zunächst zeichnet man auf ein Blatt Papier parallele Linien, die den Abstand 2d haben. Danach wirft man die Streichhölzer zufällig auf das Blatt Papier. | ||
+ | |||
+ | {{ : | ||
Nun zählt man die Stäbchen, die die Linie kreuzen. Der Quotient aus der Anzahl aller Stäbchen $N_A$ und der Anzahl der Stäbchen, die die Linie kreuzen $N_C$ ergibt einen Näherungswert für π. | Nun zählt man die Stäbchen, die die Linie kreuzen. Der Quotient aus der Anzahl aller Stäbchen $N_A$ und der Anzahl der Stäbchen, die die Linie kreuzen $N_C$ ergibt einen Näherungswert für π. | ||
Zeile 286: | Zeile 288: | ||
{{ : | {{ : | ||
+ | |||
+ | Für den Flächeninhalt des Quadrats gilt: | ||
+ | |||
+ | $$A_Q = a^2 = 2^2 = 4$$ | ||
+ | |||
+ | Für den Flächeninhalt des Kreises gilt: | ||
+ | |||
+ | $$A_K = \pi \cdot r^2 = \pi \cdot 1^1 = \pi$$ | ||
+ | |||
+ | Setzt man die beiden Flächeninhalte ins Verhältnis, | ||
+ | |||
+ | $$\dfrac{A_K}{A_Q} = \dfrac{\pi}{4}$$ | ||
+ | |||
+ | Um nun einen Näherungswert für π zu ermitteln erzeugt man Punkte mit zufälligen Koordinaten, | ||
+ | |||
+ | Das folgende Pythonprogramm ermittelt nach Eingabe der Anzahl der Punkte einen Näherungswert für $\pi$: | ||
+ | |||
+ | <code python montecarlo.py> | ||
+ | # Modul random importieren | ||
+ | import random | ||
+ | |||
+ | # Zufallszahlengenerator initialisieren | ||
+ | random.seed() | ||
+ | |||
+ | # erzeugt eine Koordinate im Bereich von -1 bis 1 | ||
+ | def koordinate(): | ||
+ | # random.random() erzeugt Zufallszahl im Bereich von 0 bis 1 | ||
+ | test = random.random() | ||
+ | if test > 0.5: | ||
+ | return random.random() | ||
+ | else: | ||
+ | return -random.random() | ||
+ | |||
+ | while True: | ||
+ | print() | ||
+ | print(" | ||
+ | print(" | ||
+ | print() | ||
+ | p = int(input(" | ||
+ | t = 0 | ||
+ | for i in range(p): | ||
+ | x = koordinate() | ||
+ | y = koordinate() | ||
+ | if (x**2+y**2)**(1/ | ||
+ | t += 1 | ||
+ | print(" | ||
+ | print() | ||
+ | if input(" | ||
+ | break | ||
+ | </ | ||
+ | |||
+ | **Aufgabe 26** | ||
+ | |||
+ | Teste das Programm. Versuche es zu verstehen und setze die entsprechenden Kommentare im Quelltext. | ||
+ | |||
+ | **Aufgabe 27** | ||
+ | |||
+ | Ermittle π für 10, 100, 1000, 10000, 100000, 1000000, 10000000, 100000000 Punkte und berechne die Abweichung vom tatsächlichen Wert von π. Nutze dazu ein Tabellenkalkulationsprogramm. |
profil/klasse10/abschnitt-10-1-2.1642862185.txt.gz · Zuletzt geändert: von lutz