|
|
Logische Verknüpfung von Bedingungen in while-Schleife |
|
TheMystery |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 10.12.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.12.2010, 00:14
Titel: Logische Verknüpfung von Bedingungen in while-Schleife
|
 |
|
 |
|
Hallo zusammen,
ich habe jetzt ewig rumprobiert, gesucht und gelesen und bin leider immer noch nicht zu einer Lösung gekommen. Jetzt wende ich mich mal vertrauensvoll ans Forum.
Mein Problem ist folgendes:
Ich fordere in einem Programm den Benutzer auf eine Eingabe zu machen mittels input. Allerdings möchte ich bei diese Eingabe nur zwei mögliche Antworten zulassen. Entweder y für Ja oder n für Nein.
Das ganze habe ich jetzt schön in eine while-Schleife verpackt, damit die Eingabezeile immer wieder aufgerufen wird, wenn eine andere Eingabe gemacht wird.
Dies sieht wie folgt aus:
Das i ist nur eine Laufvariable die von 1 bis Knoten n läuft.
Leider scheint es MatLab nicht möglich zu sein eine logische Verknüpfung wie OR oder AND in dieser Schleife durchzuführen. Egal was ich für einen Wert eingebe, er springt immer wieder in die Schleife. Ich weiß nur nicht, ob es an der Tatsache liegt, dass die Variable Ask die Klasse Char 1x1 hat oder generell an der logischen Verknüpfung, wobei ich mir letzteres nicht vorstellen kann, da es weiter oben im Programm funktioniert (hier allerdings mit Zahlen).
Ein Versuch die Buchstaben nach der Eingabe in ihren Ascii-Code zurückzuführen hat leider auch nicht funktioniert. Ich denke mal, dass es mit der Klasse der Variable zu tun hat.
Ein mögliche Lösung wäre natürlich die Buchstaben einfach in eine logische 1 oder 0 zu überführen, wobei ich davon ungern gebrauch machen würde, da ich viele solcher Eingaben habe und dann jedes Mal die Variable wie auf einen Wert ungleich 1 oder 0 setzen müsste um nicht in späteren Abfragen falsche Wert zu erzeugen (ich benutze immer die Variable Ask zur Übergabe der Eingabewert um nicht zich Variablen setzen zu müssen).
Gibt es irgendeine Lösung dies auch mit Buchstaben zu realisieren oder muss ich wirklich jeden Buchstaben nach seiner Eingabe in eine numerischen Wert ändern?
Gruß
Niko
Ok das mit 1 und 0 funktioniert auch nicht. Hab es gerade nochmal probiert er springt trotzdem in die Schleife.
|
|
|
|
|
MatLabNooB |

Forum-Guru
|
 |
Beiträge: 262
|
 |
|
 |
Anmeldedatum: 27.03.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.12.2010, 06:42
Titel:
|
 |
|
|
Harald |

Forum-Meister
|
 |
Beiträge: 24.501
|
 |
|
 |
Anmeldedatum: 26.03.09
|
 |
|
 |
Wohnort: Nähe München
|
 |
|
 |
Version: ab 2017b
|
 |
|
|
 |
|
Verfasst am: 11.12.2010, 10:59
Titel:
|
 |
Hallo Niko,
wenn, dann hättest du && nehmen müssen.
Mein konkreter Vorschlag (ein Mix aus deinem und dem von matlabnoob) wäre:
Grüße,
Harald
|
|
|
TheMystery |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 10.12.10
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 11.12.2010, 22:16
Titel:
|
 |
Hmm ja jetzt wo ihr es sagt, fällt mir auf, dass ich da einen logischen Denkfehler hatte ^^
Vielen Dank für die schnelle Antwort
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|