Re: if...else Kategorie: Programmierung (von ChristianS - 6.04.2010 21:24) | ||
Als Antwort auf Re: if...else von Franz Stefan - 5.04.2010 22:32 | ||
| ||
Hallo Franz, danke für die Antwort. Ich habe es irgendwie hingefummelt. Bin aber noch nicht ganz zufrieden damit, da es zu kompliziert geworden ist. Im Prinzip habe ich zwei Probleme. Zum Einen, wie funktioniert die "if/else"-Anweisung. Was passiert, wenn die erste if-Bedingung erfüllt wird, wird die komplette "if-anweisung dann verlassen? Ich denke Ich denke schon. Aber was passiert, wenn "if" nicht erfüllt ist, aber die erste und die zweite "else"-Bedingung erfüllt sind, wird die zweite "else"-Bedingung noch abgearbeitet? Bsp. if Feiertag oder Sonntag <i>trifft nicht zu</i> else Tag vor Feiertag oder Freitag <i>trifft zu</i> else Samstag <i>trifft zu</i> Würde in diesem Bsp. die komplette "if/elseBedingung" nach dem ersten "else" verlassen?, oder würde auch noch auf "Samstag" geprüft? Das zweite Problem ist die Logik- Die ist so kompliziert, dass ich sie kaum erklären kann.Deshalb versuche ich das mal zu beschreiben.... Gesteuert wird eine Gartenbeleuchtung und ein Wasserspiel, wobei das Wasserspiel nur zur Sommerzeit aktiv ist und die Einschaltzeit der Gartenbeleuchtung zusätzlich vom Sonnenuntergang abhängig ist. In meinem Bsp. habe ich hier mal eine feste Zeit(19 Uhr) angenommenm. Vorabend zum Feiertag oder ein Freitag Beleuchtung von 19-23 Uhr Wasserspiel von 16-23 Uhr Samstag Beleuchtung von 19-23 Uhr Wasserspiel von 8-23 Uhr Sonntag, Feiertag Beleuchtung 19-21Uhr Wasserspiel 8-21 Uhr Werktag Beleuchtung 19-21 Uhr Wasserspiel 16-21 Uhr folgen mehrere Feiertage aufeinander, müssen alle (n-1)ten Feiertage wie ein Samstag behandelt werden, der letzte Feiertag dann wieder normal. (n-1)te Feiertag Wasserspiel 08-23 Uhr Beleuchtung 19-23 Uhr So, ich hoffe, die Logik ist klar geworden, ganz platt ausgedrückt, soll die Beleuchtung immer dann abends länger leuchten, wenn man am nächsten Tag nicht arbeiten muss. Das Wasserspiel läuft ganztägig wenn man frei hat. Wie könnte eine einfache Logik aussehen?? Danke und Gru�, Christian. > Hallo Christian, > > das ist fast eine klassische logische Aufgabe. > > Zuerst noch eine Frage: :-) > - was ist (soll sein) bei aufeinanderfolgenden Feiertagen > > Du mu�t zuerst die Prioritäten definieren. Ich vermute das wird in etwa sein: > - Feiertag oder Sonntag > - Tag vor Feiertag oder Freitag > - Samstag > - Werktag > > Und genau in der Reihenfolge mü�te es dann abgefragt werden. > > lg, Franz > > > Hallo, > > ich habe mal eine Frage. Ich habe eine Zeitschaltuhr programmiert, die abhängig vom jeweiligen > > Tag unterschiedliche Schaltzeiten bereit stellt. Ich unterscheide folgende Fälle: > > > > 1. Tag vor einem Feiertag > > 2. Feiertag > > 3. Freitag > > 4. Samstag > > 5. Sonntag > > 6. Werktag > > > > Der Freitag und der Tag vor einem feiertag werden gleich behandelt, Der Feiertag und der > > Sonntag auch. > > > > Das Programm würde ich wie folgt aufbauen.... > > > > if "Tag vor Feiertag" or "Freitag" > > > > else if "Feiertag" or "Sonntag" > > > > else if " Samstag" > > > > else > > > > > > was passiert, wenn der Feiertag auf einen Freitag fällt? Dann würden doch sicherlich nicht die > > Feiertags-Schaltzeiten ausgeführt, sondern die "Tag vor Feiertag" -Zeiten. Und was passiert wenn der > > Feiertag auf den Samstag fällt. Dann sollten natürlich auch die Feiertags-Zeiten ausgeführt werden. Das > > gleiche Problem habe ich, wenn der "Tag vor Feiertag" auf einen Samstag fällt, dann müssen die > > Samstags-Zeiten vorrang haben. > > > > Hat jemand eine Idee, wie man das einfach lösen kann? > > > > Gru�, > > Christian. | ||
Antwort schreiben Antworten: |