Seite 1 von 1

Switch und Case für Generator

Verfasst: 13.11.2009 19:15
von lukiono
Moin miteinander

Ich habe folgendes Anliegen.

Was will ich mit Php programmieren?
Es soll ein Generator zur Berechnung diverser Zufallswetterdaten für ein Forenspiel werden. Es wird pro Monat eine Mindest und eine Maximum Temperatur festgelegt. Dieser Temperaturwert des durchschnittlichen Monats geht problemlos.

Jetzt kommt der schwierige Teil:
Da ich ja 12 Monate habe zur Berechnung aber nicht will das alle gleichzeitig ausgeführt werden, (einfache aber unschöne Lösung), möchte ich das Ganze mit der Switch und Case Funktion verwenden.
Ich hab hier die Codes:

HTML-Formular mit Radiobuttons und erfolgreicher $_Post Übergabe:
http://rcttainment.com/wettersystem/generator.txt

Generator in PhP mit erfolgreicher $_Post Übergabe. Case und Switch funktionieren nicht:
http://rcttainment.com/wettersystem/generator2.text

Live-Demonstration:
http://rcttainment.com/wettersystem

Wie stell ich das jetzt am Besten an? Sorry aber bei Switch und Case hab ich keine Ahnung und einzelne Tuto haben mir nicht weitergeholfen. Muss ich beim Formular auch monat1, monat2, usw. machen?

Danke im Voraus für eure Hilfe
Lukas K

Re: Switch und Case für Generator

Verfasst: 14.11.2009 12:03
von Boecki91
Die 2. Datei kann ich nicht öffnen, da ist ein e in der .txt, und die Demo spukt mir immer Februar mit aus, die nicht im Script vorkommen.

Vorschlag:

Array der Art:

Code: Alles auswählen

$wetterdaten = array(
    "Jan" => array("min" = -10, "max" = 2),
    "Feb" => array("min" = -10, "max" = 2),
//Und so weiter
); 
dann den Input prüfen indem du schaust ob der gewählte Monat in den Wetterdaten vertreten ist. dann mit rand() und den gegeben min max werten einen Zufallswert erzeugen.
Statistisch ist der Mittelwert bei Zufallsfunktionen (min+max)/2, wenn du das bei allen 12 Monaten machst und summierst und dann durch 12 Teilst hast du einen Jahresdurchschnitt.

Du kannst in dem Script auch gleich das HTML-Formular erstellen, wenn z.B. keine Daten übermittelt wurden.

PS: Grüß MTV-King ;)

Re: Switch und Case für Generator

Verfasst: 14.11.2009 13:09
von lukiono
Danke für deine Antwort. Habe jetzt etwas gefunden was ich ausprobiere. Mal schauen ob es dann geht.

Der Mittelwert ist sehr interessant. Damit könnte ich also mehr in der Mitte bleiben bei der Zufallszahl anstatt sehr nahe an die Grenzen zu gehen?

Und wie könnte ich sonst einen Durchschnittswert reinpacken?

MfG
Lukas

Re: Switch und Case für Generator

Verfasst: 14.11.2009 15:19
von Boecki91
wie meinst du das?
stell du vor du würfelst ein echter Würfel nach 6 Millionen Würfen jede Zahl 1Millionen mal (von der Wahrscheinlichkeit her) wenn du keine Extrem werte haben willst musst du Tricksen indem du von mehrere Zufallszahlen den Mittelwert bildest, allerdings nicht von zu vielen weil es sonst wieder zu wenig Zufall wird, das ist das was ich mir gerade so überlegt habe.

Es gibt aber auch noch Dinge wie die Normalverteilung
http://de.wikipedia.org/wiki/Normalverteilung
Die Polar-Methode scheint gut zu sein:
http://de.wikipedia.org/wiki/Polar-Methode
http://www.php.net/manual/en/function.rand.php#53600

Re: Switch und Case für Generator

Verfasst: 16.11.2009 03:45
von lukiono
Ich hab es jetzt einigermassen hinbekommen. Aber über die Formel muss ich nochmal drüber. Bleibt zu sehr an einem Durchschnittswert.

Danke :)

Re: Switch und Case für Generator

Verfasst: 16.11.2009 21:32
von Boecki91
Ich würde die Formel als grundlage nehmen und mit Excel rumbasteln in einem Diagramm.

wenn du z.b. 1 bis 10 machst hast du ja nur 100 Möglichkeiten bei 2 Zufallszahlen. es zeigt dir wie die Verteilung aussehen wird.