|
|
Brauche Hilfe bei if-Schleife |
|
Nordlicht |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.01.2014, 11:52
Titel: Brauche Hilfe bei if-Schleife
|
|
Moin,
Ich habe einen Code geschrieben, bei dem 3 Zufallszahlen erzeugt werden, die unter einer Bedingung jeweils addiert werden sollen. Das Programm geht aber gar nicht erst in die if-Schleife rein..Wie kommt das? Zusätzlich möchte ich die Schleife auf jeden Fall 10 Mal durchlaufen, kann man das so machen, dass wenn die Bedingung nicht erfüllt ist der Zähler i um einen Wert heruntergesetzt wird? Hab irgendwie n Brett vorm Kopp grad ; )
Vielen Dank!
|
|
|
|
|
Mmmartina |
Forum-Meister
|
|
Beiträge: 745
|
|
|
|
Anmeldedatum: 30.10.12
|
|
|
|
Wohnort: hier
|
|
|
|
Version: R2020a
|
|
|
|
|
|
Verfasst am: 31.01.2014, 12:17
Titel:
|
|
Die Aussage "b1>=b2>=b3" ergibt für die erzeugten Zufallszahlen immer eine 0.
Grund: b1>=b2 ergibt eine 1 (wahre Aussage).
Somit steht dann "1 >= b3" dort und das ist false (0).
Es wird von links nach recht abgearbeitet!
Lösung: setz einfach 2 Bedinungen mit && verbunden ein ((b1>=b2)&&(b2>=b3))
_________________
LG
Martina
"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
|
|
|
Nordlicht |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.01.2014, 12:43
Titel:
|
|
ahh super, danke!! jetzt hab ichs auch gecheckt^^
jetzt noch das Problem mit dem Zähler..Angenommen die
if-Bedingung ist gleich im ersten Anlauf nicht erfüllt, dann wird
ja mein i-Zähler auf 0 gesetzt und die Schleife bricht sofort ab. Wie kann
ich das Problem umgehen?
|
|
|
Headbucket |
Forum-Anfänger
|
|
Beiträge: 34
|
|
|
|
Anmeldedatum: 03.12.13
|
|
|
|
Wohnort: Dresden
|
|
|
|
Version: R2007B
|
|
|
|
|
|
Verfasst am: 31.01.2014, 13:40
Titel:
|
|
Zunächst: http://if-schleife.de/
Zu deinem zweiten Problem:
Eine Möglichkeit wäre eine erneute If-Abfrage im else-Zweig deiner for-schleife. Hier kannst du prüfen, welchen Wert i hat und ziehst nur etwas ab, wenn i größer als 1 ist.
Eine bessere Möglichkeit wäre die Verwendung einer while-Schleife. Zum Beispiel so:
i wird also nur erhöht, wenn die if-Abfrage erfolgreich ist.
Grüße
Headbucket
|
|
|
Nordlicht |
Gast
|
|
Beiträge: ---
|
|
|
|
Anmeldedatum: ---
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.01.2014, 14:17
Titel:
|
|
Haha, ja doch! ; ) Jetzt werd ichs auf jeden fall nicht mehr vergessen!
perfekt, habe das in mein programm so eingebaut und es funktioniert wunderbar! ich danke vielmals!
Beste Grüße
|
|
|
|
|
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 - 2024
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.
|
|