Homer vs. Marge
-
Wo ist hier der Unterschied ?
1. Marge ist nicht zu Hause, wenn Homer arbeitet (if)
2. Marge ist nicht zu Hause, solange Homer arbeitet (while)
Marge ist also zu Hause, wenn Homer auch zu Hause ist.
Wenn man das Programmiertechnisch lösen müsste, was wäre hier
logisch *hard working brain ratter ratter*?if oder while ??
-
Nicht klar definiert. Wann ist Marge zu Hause?
Edit: Und WTF hat Logik mit if und while zu tun? oO
-
cooky451 schrieb:
Nicht klar definiert. Wann ist Marge zu Hause?
Edit: Und WTF hat Logik mit if und while zu tun? oOIch habe nie behauptet, dass Logik irgendwas mit if or while zu tun hat.
nur was programmiertechnisch "logisch" wäre, wollte ich wissen.
anschließend, ob man if oder while benutzen muss....
-
Die Frage lässt sich nicht beantworten, weil du nicht sagst, was du machen möchtest. Möchtest du wissen, ob Marge zu einer bestimmten Zeit zuhause ist, wäre if das richtige. Möchtest du alle Zeiten aufzählen an denen Marge nicht zu hause ist, wäre eine Lösung auf Schleifenbasis das richtige (wobei ich da nicht while nehmen würde).
Menschliche Sprache 1:1 in Programmcode umsetzen geht eben nur so gut wie es hier manchmal scheint, wenn vorher ein Programmierer den menschlichen Satz formuliert hat.
-
Wenn man die richtigen Mittel nimmt, haut es schon hin (schaut halt nach Pseudocode aus):
//1: if(Homer_arbeitet) Marge_zuhause = false; //2: Marge_zuhause = false; Homer.Arbeiten(); Marge_zuhause = true;
Naja, oder so. Ich finde es auch nicht besonders sinnvoll (aber hatte grad Lust etwas zu schreiben)
-
Das Problem im Ausgangsposting ist doch das man if nicht einfach durch eine Schleife austauschen kann.
Die if prüft nur einmal, die while aber ständig.Der Unterschied ist bei der if das Marge nie zuhause ist wenn Homer zum Zeitpunkt der Prüfung auf Arbeit war.
Anders bei der while.
-
Das Problem ist, dass Sprache auf Programme schlecht abgebildet werden kann. Was fehlt ist der Kontext.
-
Das Problem ist, dass ihr offensichtlich nicht den Unterschied zwischen wenn (temporal) und falls (kausal) kennt.