Versuchen Sie es mit Matlab zu fangen

Versuchen Sie es mit Matlab zu fangen
Der folgende Artikel erläutert, wie die Anweisung Try-Catch in MATLAB® verwendet wird. Die Anweisung für Try-Catch ist eine der am häufigsten verwendeten Programmiersprachen weltweit, und sein Ausführungsmodus ist für alle gleich. Dieser Artikel enthält praktische Beispiele und Bilder, die dem Leser helfen, zu verstehen, wie diese Anweisung verwendet wird, um Fehler in der Echtzeitausführung zu behandeln.

Matlab -Versuch Syntax

versuchen
Aussagen
Ausnahme fangen
Aussagen
Ende

MATLAB Versuchen Sie, Beschreibungen und Beispiele zu fangen

Eine Versuchs-Catch-Anweisung ist ein Tool, das die Programmstabilität und Robustheit gegen Ausnahmen oder Fehler in der realen Ausführungszeit verleiht. Diese Ausnahmen oder Fehler können so erfasst werden.

Die Anweisung für Try-Catch besteht aus zwei Blöcken. Wenn ein Versuch eine Ausnahme einnimmt, gibt es die Kontrolle, um sie für die Verarbeitung zu fangen. Im Folgenden werden wir uns einige praktische Beispiele ansehen, die die Anweisung Try-Catch-Anweisung verwenden, um besser zu verstehen, wie es funktioniert.

So erfassen und verarbeiten Sie eine Ausnahme oder einen Fehler mit der Versuch-Catch-Anweisung in Matlab

In diesem Beispiel wird angezeigt, wie Sie die Anweisung Try-Catch gegen einen gemeinsamen Fehler verwenden. Dies ist eine der drei grundlegenden Funktionen, die MATLAB für diese Art von mathematischer Operation hat, und akzeptiert nur reelle Zahlen mit einem positiven Vorzeichen als Eingabebereich. Wenn diese Regel nicht erfüllt ist, wird ein Fehler generiert.

Lassen Sie uns als Nächst. Diese Operation wird im Try -Block durchgeführt. Wenn ein Fehler eintritt.

Erstellen Sie ein Skript, fügen Sie diesen Code ein und klicken Sie auf Ausführen. Um die Anwendung zu schließen, drücken Sie Strg+C

während 1
Eingabeaufforderung = 'Geben Sie einen Wert ein, um seine Quadratwurzel zu erhalten.';
a = Eingabe (Eingabeaufforderung);
versuchen
x = realSqrt (a);
fangen
disp "Versuchen Sie einen Fehler gefunden und haben die Kontrolle übergeben, um zu fangen."
x = sqrt (a);
Ende
disp (['Die Quadratwurzel ist:', num2str (x)])
Ende

Sobald die App in Betrieb ist, geben wir die Werte ein, um das Quadratwurzel zu berechnen.

Wenn negative oder komplexe Werte eingegeben werden, wird er anstatt einen Fehler in der Funktion realSQRT () zu erhöhen, und die Kontrolle über die Kontrolle und die Operation wird mit der Funktion SQRT () aufgelöst. In diesem Fall wird die folgende Nachricht in der Befehlskonsole angezeigt:

"Versuchen Sie, einen Fehler zu finden, und übergeben die Kontrolle, um sie zu fangen."

So identifizieren Sie Fehler mit „Mexception“ und verwalten sie mit Versuch in Matlab

Obwohl die Identifizierung von Ausnahmen mit „Mexception“ einen eigenen Artikel verdient, werden wir kurz erklären, wie diese Ressource verwendet wird, was uns hilft. MATLAB konstruiert ein „Mexception“ -Objekt mit Informationen über den Fehler, wenn ein Fehler generiert wird. Diese Informationen sind sehr nützlich, da wir sie verwenden können, um verschiedene spezifische Fehler zu klassifizieren und zu behandeln. Im Folgenden können Sie den Inhalt von „Mexception“ mit Informationen zu einem von der Funktion für eindeutigen () generierten Fehler sehen.

Im folgenden Beispiel werden wir sehen, wie diese Informationen abgerufen werden können, um die Fehler korrekt zu verarbeiten. Dazu erstellen wir eine Konsolenanwendung, in der wir die Funktion "Unique () verwenden, um die Fehler zu generieren, die wir im Catch -Block und in der Funktion prompt () die Daten eingeben, die die Eingabeargumente von eindeutig sind ().

Wenn ein Versuch einen dieser Fehler fängt, werden seine Informationen in der „Mexception“ gespeichert, die wir mit dem Namen „Inf_err“ erstellen werden, wie unten gezeigt.

fangen inf_err

Im Catch -Block senden wir eine Nachricht an den Benutzer, in dem er darüber informiert wird, dass er einen Fehler mit der folgenden Meldung erfasst "Versuch hat einen Fehler gefunden und die Kontrolle übergeben, um zu fangen".

Dann nehmen wir die Fehlerkennung aus dem zuvor erstellten Objekt „Err_inf.Kennung ”. Diese Kennung hat die Form einer Zeichenfolge und gibt uns Informationen zu:

Die Funktion, die es erzeugt hat MATLAB: Einzigartig

Und der spezifische Fehler Unbekannt

'MATLAB: Einzigartig: UnbekannterInput'

Diese Zeichenfolge ist das Argument, dass der Switch -Beding in jedem Fall mit jedem der vordefinierten Fehler verglichen wird.

inf_err wechseln.Kennung
Fall 'MATLAB: Einzigartig: unbekanntInput' '

Fall 'Matlab: Einzigartig: Unbekannteflag' '

Ende

Eine mögliche Lösung für den Fehler oder eine Nachricht an den Benutzer wird jeweils gegeben.

Erstellen Sie ein Skript, fügen Sie diesen Code ein und führen Sie das Skript aus. Um die Anwendung zu schließen, drücken Sie Strg+C.

NS = [1, 2, 3; 4, 5, 6];
während 1
Eingabeaufforderung = 'Geben Sie einen Wert ein, um eindeutig zu werden.';
a = Eingabe (Eingabeaufforderung);
versuchen
x = einzigartig (ns, a);
fangen inf_err
disp "Versuch einen Fehler gefunden und die Kontrolle übergeben, um zu fangen."
disp (['Fehlerkennung:', Inf_err.Kennung]);
inf_err wechseln.Kennung
Fall 'MATLAB: Einzigartig: unbekanntInput' '
disp 'Der angegebene Eintrag konnte nicht gefunden werden. Bitte versuche es erneut.';
Fall 'Matlab: Einzigartig: Unbekannteflag' '
disp 'Die einzigartige () -Funktion erkennt das Flag nicht:';
disp (a);
disp "gültige Flaggen sind" Zeilen "," First "," Last "," stabil "," sortiert ";
Ende
Ende
Eingabeaufforderung = 'Drücken Sie die Eingabetaste, um fortzufahren';
a = Eingabe (Eingabeaufforderung);
clc ();
Ende

Die über die Eingabeaufforderung eingegebenen Daten werden als zweites Eingabeargument an die Funktion für eindeutig () gesendet. Diese Eingabe entspricht den Flags "Zeilen", "zuerst", "Letzter", "stabil", "sortiert" oder "Legacy" dieser Funktion, sodass er einen Fehler erzeugt als eine dieser Flaggen anerkannt. Es generiert auch einen Fehler, wenn dieser Eingabe einen numerischen Wert erhält. Wir haben einen Fall im Schalter vordefiniert, der für jeden dieser beiden Fehler bedingt ist, um jeden Fehler separat zu verarbeiten. In beiden Fällen werden Nachrichten an den Benutzer gesendet, der sie über den Fehler und die möglichen Lösungen informiert.

Wenn die Anwendung in der MATLAB -Konsole ausgeführt wird, geben Sie 'Zeilen' in die Eingabeaufforderung ein und drücken Sie die Eingabetaste. In diesem Fall wird kein Fehler erzeugt, und das Ergebnis ist = einzigartig (NS, 'Zeilen') und wird in der Befehlskonsole angezeigt.

In diesem Fall wurde die Zeichenfolge 'ABCD' an Unique () gesendet, und da sie keiner der Flags übereinstimmt, wurde ein Fehler generiert.

Im Block „Catch“ wurden die Informationen zu diesem Fehler gesammelt und klassifiziert, um ihm eine Sonderbehandlung zu geben, eine Nachricht an den Benutzer mit den Flag -Optionen, die in der eindeutigen () Funktion verfügbar sind.

Das Gleiche gilt in diesem Fall, in dem ein nicht akzeptierter Eingangstyp gesendet wurde. Dies erzeugt einen Fehler, den der Block „Try“ erkennt und an den „Catch“ -Block erfasst und übergibt, in dem der Fehler klassifiziert und behandelt wird. In diesem Fall meldet eine Nachricht an den Benutzer, der den Fehler und die mögliche Lösung meldet.

Abschluss:

In diesem Artikel haben wir die Aussage-Catch-Anweisung in MATLAB erläutert. Wir haben auch einige praktische Beispiele gegeben, die die Verwendung der „Versuchs-Catch-Anweisung für die Handhabung von Ausnahmen zeigen. Wir haben auch erklärt, wie die Fehler im Block „Catch“ mithilfe des Mexception -Objekts klassifiziert werden können. Wir hoffen, Sie haben diesen Matlab -Artikel nützlich gefunden. Weitere Tipps und Informationen finden Sie unter anderen Linux -Hinweisartikeln.