WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Wie finde ich überlaufende Schleifen?

 

domina
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 17.01.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 26.01.2008, 19:08     Titel: Wie finde ich überlaufende Schleifen?
  Antworten mit Zitat      
Wenn ich mein Programm startet sagt es mir bushy, dann passiert nix mehr. wie kann ich die verantwortliche schleife finden?
Private Nachricht senden Benutzer-Profile anzeigen


nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.318
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 27.01.2008, 16:13     Titel:
  Antworten mit Zitat      
Hi,

in die Schleifen einbauen
Code:
disp('Ich bin in Schleife X');

Vielleicht noch mit Laufvariable.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
domina
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 17.01.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 27.01.2008, 19:02     Titel:
  Antworten mit Zitat      
kann man wenn das programm abrechen wenn es auf bushy läuft oder muss man es immer strg+alt+entf beenden?
Private Nachricht senden Benutzer-Profile anzeigen
 
nschlange
Ehrenmitglied

Ehrenmitglied



Beiträge: 1.318
Anmeldedatum: 06.09.07
Wohnort: NRW
Version: R2007b
     Beitrag Verfasst am: 27.01.2008, 19:32     Titel:
  Antworten mit Zitat      
Du kannst versuchen
Strg-C
zu drücken. Unter Windows reagiert das nicht immer.
Aber es soll helfen, pause(0) in die Schleife zu schreiben.
_________________

Viele Grüße
nschlange

"Chuck Norris ejakuliert fluessigen Stahl!"
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Michaela
Forum-Century

Forum-Century


Beiträge: 239
Anmeldedatum: 12.07.07
Wohnort: ---
Version: bis 2007b
     Beitrag Verfasst am: 27.01.2008, 23:29     Titel:
  Antworten mit Zitat      
natürlich kann man sich auch mit dem debugger durch die schleifen hangeln -notfalls mit unterstützung von try _ catch
_________________

---------------------------------------------------------------
Leider habe ich daheim zwar Internet aber kein Matlab - daher sind alle Syntaxbeispiele circa Angaben.....
Private Nachricht senden Benutzer-Profile anzeigen
 
domina
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 17.01.08
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.01.2008, 15:53     Titel:
  Antworten mit Zitat      
wie funktioniert son debugger, wie arbeitet der und wie starte ich den?

hab mich damit noch nie auseinandergesetzt.
Private Nachricht senden Benutzer-Profile anzeigen
 
Michaela
Forum-Century

Forum-Century


Beiträge: 239
Anmeldedatum: 12.07.07
Wohnort: ---
Version: bis 2007b
     Beitrag Verfasst am: 28.01.2008, 21:06     Titel:
  Antworten mit Zitat      
domina hat Folgendes geschrieben:
wie funktioniert son debugger, wie arbeitet der und wie starte ich den?

hab mich damit noch nie auseinandergesetzt.



Hier ist es erklärt http://www.mathworks.com/access/hel.....lp/techdoc/ref/debug.html

Das Prinzip ist folgendes: Durch setzen von sogenannten breakpoints (im editor an bestimmten Zeilen) kannst Du quasi während des ausführens der Funktion in den code springen, und ihn ab da zeilenweise ausführen. Währenddessen kann man in ruhe die werte in allen variablen überprüfen, und schaun ob das programm wirklihc das mach, was man sich vorgestellt hat. recht praktisch

in matlab lassen sich allerdings nur funktionen, keine skripte, debuggen.
_________________

---------------------------------------------------------------
Leider habe ich daheim zwar Internet aber kein Matlab - daher sind alle Syntaxbeispiele circa Angaben.....
Private Nachricht senden Benutzer-Profile anzeigen
 
Stefanie

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 31.03.2008, 17:58     Titel:
  Antworten mit Zitat      
gibt es dann andere möglichkeiten, ein ganzes programm, welches aus mehreren ineinander verschachtelten files besteht, zu überprüfen?
mein simulations tool besteht aus ca 30 files und in irgendeiner schleife bleibt es immer hängen. kann ich mir anzeigen lassen, in welcher?

das mit

disp('Ich bin in Schleife X');

versteh ich nicht ganz, wo kann ich das reinschreiben?

vielen lieben Dank für eure Hilfe.

LG,
Stefanie
 
Michaela
Forum-Century

Forum-Century


Beiträge: 239
Anmeldedatum: 12.07.07
Wohnort: ---
Version: bis 2007b
     Beitrag Verfasst am: 31.03.2008, 18:08     Titel:
  Antworten mit Zitat      
probiers mal so (unter Verwendung der Matlab Hilfe)

Code:

ii = 1
while ii < 10

disp('ich bin in schleife 1')
ii = ii +1;

end
disp('jetzt habe ich schleife 1 verlassen')

while ii < 20
disp('und jetzt bin ich in schleife 2')
ii = ii+1;
end

 



oder mit try ... catch

Code:


vec = [ 1 2 3 0 5 10]

try
for ii = vec
mytest= 10/vec ;

end

catch
disp('Schleife ist fehlgeschlagen!')
disp(['Wert von ii:  '  num2str(ii)] )
end

 

Beim vierten Durchlauf der Schleife gibt es eine Division durch Null und damit eine Fehlermeldung (Abfragbar mittels lasterror), und aufgrund derfehlermeldung im try teil wird der catch teil ausgeführt.
_________________

---------------------------------------------------------------
Leider habe ich daheim zwar Internet aber kein Matlab - daher sind alle Syntaxbeispiele circa Angaben.....
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.