![]() |
Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Hallo liebes Forum,
also sorry erstmal falls der Beitrag hier völlig falsch ist aber ich bin neu hier:stupid: Und zwar hätte ich da eine Frage zu einer Aufgabe die ich für Info Klasse 11 Gymnasium Sachsen machen soll :D Wir haben bis jetzt behandelt: -Was sind algorithmen,programme etc (sehr allgemeines wissen) -Alternativen -Schleifen -Schleifen mit Bedingungen Jetzt habe ich eine Aufgabe bekommen die mir echt den Kopf rauchen lässt: Pi nach der Monte-Carlo-Methode Berechnen sie Pi nachfolgendem Verfahren: Man wählt in dem durch die Eckpunkte (0|0),(1|0),(1|1),(0|1) festgelegten Einheitsquadrat N (z.B. N=10000) Zufallspunkte, indem man deren Koordinaten per Zufallsgenerator erzeugen läßt. Außerdem ermittelt man die Anzhal K derjenigen Ounkte, die dabei in den Einheitskreis um (0|0) fallen. Da ein Viertel des Einheitskreises im genannten Quadrat liegt, ist K/N ein Näherungswert für Pi/4. Muss ich dafür nicht erst einmal wissen wie man überhaupt so ein Koordinatensystem mit Kreis in Delphi erstellt? Und Zufallsgenerator hatten wir auch noch nicht dran. xD Bin ich jetzt zu doof und es ist eigentlich viel einfacher als es aussieht? :wall: Weil die Aufgabe steht eigentlich auch ziemlich am Anfang (Kapitel 4: Algorithmen und Wiederholungen) im Lehrbuch... Ich wäre sehr dankbar wenn mir jemand ein bisschen Hilfe oder wenigstens einen Denkanstoß geben könnte:-D Mfg Scra (Btw ich benutze Delphi 6) |
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Hast du dich schon mal über das Monte-Carlo-Verfahren informiert?
Glaube ich nicht, denn dann würdest du nicht fragen wie man ein Koordinatensystem mit Kreis erstellt. Du musst also erst einmal verstanden haben, was das Monte-Carlo-Verfahren ist. Dann kannst du dich an die Umsetzung in Delphi machen. |
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Ist diese Aufgabe für einen Anfänger nicht etwas übertrieben? Kapitel 4 des Lehrbuchs... hätte das eher nach mindestens einem Jahr Grundwissenaneignung erwartet.
|
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Zu meinem Glück liegen solche "Schulaufgaben" bei mir nun mit 4x Jahren schon "einige" Zeit zurück.
Ohne zu wissen ob es "MonteCarlo" damals schon gab, aber wenn mir das "trotz Aufgabe" damals nix gesagt hätte(und heute aus Erfahrung dafür schlicht sinnlos erscheint), dann gehe ich damals wie noch heute schlicht praktisch & problemorientiert vor! -> bzgl. dem PI Problem also schlicht durch einfache Umfang-Näherung via Außen&Innen-N-ECKen... (= pure Fleißarbeit diese einfache Mathematik in eine (Delphi)Schleife zu bringen) -> klar ist das "igit Oldscool", aber es erfüllt bei heutiger Rechenleistung deterministisch seinen Zweck für beherschbare Dinge wie "PI" besser&schneller wie sagen wir statistische oder (Zufalls)Algos ala "MonteCarlo"... Nottfalls muss der IT Lehrer eventuell mal kurz sein Mathewissen aufrischen, aber dann wird er bestätigen und erkennen das diese "PI Aufgabe" so auch anders, einfacher und praktisch so wohl sogar besser gelöst werden kann. => Praktisch gilt in Informatik & Medizin ja sehr oft der Grundsatz, alles was funktioniert&hilft ist gut... und wer es kann/macht hat Recht;) |
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Zitat:
Die Zufallszahlen x,y erzeugst Du mit dem in Delphi eingebauten Zufallsgenerator random . |
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Zitat:
Wenn in der Schule eine Aufgabe gestellt wird, und auch der zu nehmende Lösungsweg genannt wird, führt jede Abweichung davon zu einem "Thema verfehlt". Es geht schließlich darum zu zeigen, daß man "dieses spezifische Problem" verstanden hat und nicht um irgendwas anderes. Ich würde zB auch keine Punkte vergeben, wenn die Aufgabe lautet "ermittle die ersten 30 Primzahlen mit dem ![]() ![]() Sherlock |
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Nunja, wir könnten auch eine Hausaufgaben-Sparte eröffnen oder dem TE als Hausaufgabe die Erforschung der DP-Suche aufgeben.
![]() |
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
Hier mal ein Pseudo-Programm, damit auch ein jeder versteht, dass das einen Anfänger mit dem vom TE genannten Vorwissen nicht überfordert.
Code:
Die
werteGesamt = 0
werteImKreis = 0 solange werteGesamt < 1000 x = Zufallswert(0..1) y = Zufallswert(0..1) Erhöhe( werteGesamt ) wenn ImKreis( x, y ) Erhöhe( werteImKreis ) monteCarloPi = 4 * werteImKreis / werteGesamt
Delphi-Quellcode:
Funktion sollte sich mit allgemeinem mathematischen Schulwissen erstellen lassen (muss ja auch gar keine echte Delphi-Funktion sein).
ImKreis
Wie man an Zufallswerte in Delphi kommt sollte sich ganz leicht mit einer 5 Minuten Recherche im Internet finden lassen. |
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
|
AW: Hilfe: Monte Carlo Methode in Delphi bei Anfänger
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz