Funkcja powrotu w MATLAB

Funkcja powrotu w MATLAB
Kiedy wywołujemy funkcje do przetwarzania danych w MATLAB, dynamika tego procesu często zależy od kilku czynników, takich jak rodzaj wysłanych danych i wyników wątków w tej samej funkcji. Te warunkowe czynniki mogą powodować powrót funkcji do punktu wywołania, zanim zostanie w pełni wykonana. Aby uniknąć wykonywania niezbędnego kodu, procesy danych niezgodne z funkcją lub po prostu dlatego, że uzyskano wynik końcowy, Matlab oferuje funkcję return () w tym celu.

Poniższy artykuł szczegółowo wyjaśnia użycie funkcji powrotu w MATLAB.

Ta funkcja jest częścią większości języków programowania wszechczasów, a jej składnia i działanie są takie same dla wszystkich. Poniżej pokażemy, jak korzystać z tej funkcji w MATLAB z praktycznymi przykładami i zdjęciami.

Składnia funkcji powrotu w MATLAB

powrót;

Opis funkcji powrotu Matlab

Zwrot kończy obecnie funkcję wykonującą i zwraca przepływ programu do kodu, z którego wywołano funkcję. Gdy funkcja jest wywoływana w MATLAB, przepływ programu przeskakuje do niej, wykonuje go całkowicie i wraca, aby kontynuować następny wiersz połączenia. Czasami jednak konieczne jest zakończenie funkcji gdzieś zamiast dokładnego wykonywania. Z tego powodu Matlab, podobnie jak większość języków programowania, zapewnia funkcję powrotu w tym celu. Zwroty te przynoszą znaczące korzyści programowi, takie jak szybkość, unikając wykonywania niepotrzebnych fragmentów kodu. Zapewniają również stabilność w wykonywaniu programu, ponieważ funkcja może zostać zakończona zgodnie z warunkami ustalonymi przez programistę użytkownika w celu wywołania zwrotu. Na przykład, jeśli typ danych wejściowych jest niezgodny z funkcją, nikt nie będzie wykonywał i powróci do następnego wiersza programu, który go nazywał.

Zwroty te są zwykle umieszczane w funkcji w „jeśli” warunki, „przełącz” lub inne rodzaje warunków skoku, w których zmienna, wynik, typ danych itp., określa, czy wykonywanie funkcji powinno być kontynuowane, czy też powinno ona zakończyć i powrócić do funkcji, z której została wywołana. Następnie zobaczymy praktyczne przykłady tworzenia funkcji z zwrotami, które pomogą Ci lepiej zrozumieć korzystanie z tego zasobu.

Jak przerwać wykonanie funkcji z „Powrót” w MATLAB, jeśli parametry wejściowe są poza zasięgiem

W tym przykładzie utworzymy prostą aplikację konsoli, aby pokazać, jak zwrócić; Działa w Matlab. Ta aplikacja składa się z dwóch części; Pierwszy to aplikacja, w której wprowadzamy wartości przez konsolę, zobacz wyniki i wywołuje funkcję „return_example ()”. Oto kod tej sekcji:

podczas 1
monit = 'Wprowadź wartość i naciśnij Enter. Ctrl+c do wyjścia ”;
x = wejście (monit); % Wartość wejściowa
clc (); % Czystej konsoli
return_example (x); % Funkcja return_example () wywołanie
koniec

Drugą częścią tego kodu jest funkcja „return_example ()”. Ta funkcja składa się z „jeśli” warunkowej z logiką zwarcia, która analizuje parametry „x”. Jeśli są poza zasięgiem od 0 do 100, wyświetla następującą wiadomość na ekranie: „x” poza zasięgiem, zwróć ”i powraca do następnego wiersza wywołania do funkcji„ return_example ”, przerywając pełne wykonywanie funkcja.

Utwórz skrypt, wklej pełny kod i naciśnij „Uruchom”. Wprowadź różne wartości za pomocą konsoli polecenia i naciśnij Enter. Możesz także ustawić punkty przerwania w wierszach 13 i 17, aby zatrzymać wykonanie w tym momencie i kontrolować przepływ programu.

Wynik funkcji = return_example (x)
Jeśli (x 100) % x jest poza zakresem od 0 do 100
Disp '„x” poza zasięgiem, powraca do następnego wiersza „return_example” wywołanie
powrót; % Zwrot kończy return_example ()
Zakończ % i wróć do następnego wiersza rozmowy
% Jeśli wartość „x” znajduje się w określonym zakresie, funkcja
% return_example () trwa tutaj.
Disp '„x” w zakresie, funkcja wykonana całkowicie'
koniec

Jeśli parametry „x” znajdują się w zakresie określonym w „jeśli” warunkowo, funkcja return_example () zostanie w pełni wykonana. W przeciwnym razie jego wykonanie zostanie przerwane i powróci do kodu, z którego został wywołany.

Poniższy obraz pokazuje, co się dzieje, gdy wprowadzasz wartość w określonym zakresie. W takim przypadku funkcja return_example jest wykonywana całkowicie. Jak widać, przepływ programu jest zatrzymany w punkcie przerwania linii 17.

Poniższy obraz pokazuje, co się stanie, jeśli wprowadzisz wartość, która jest poza określonym zakresem. W takim przypadku funkcja return_example jest przerywana przez „powrót”, a przepływ programu powraca do następnego wiersza wywołania return_example (). Jak widać, przepływ programu jest zatrzymany w punkcie przerwania w linii 13.

Jak przerwać wykonywanie funkcji za pomocą „powrotu” w MATLAB, jeśli typy danych wejściowych nie są kompatybilne

W poprzednim przykładzie pokazaliśmy, jak zatrzymać wykonanie funkcji i zwrócić przepływ programu do kodu, który go nazywał. Odbywa się to poprzez umieszczenie jako warunek dla niego z góry określony zakres wartości w warunkowym „jeśli”, który umieściliśmy w kodzie funkcji return_example ().

W poniższym przykładzie utworzymy również aplikację konsoli i użyjemy funkcji powrotu, aby przerywać funkcję return_example2, jeśli typ danych wejściowych wysłany w wywołaniu jest niezgodny z tymi zaakceptowanymi przez funkcję.

Jak w poprzednim przykładzie, utworzymy aplikację konsoli, która składa się z dwóch bloków. Pierwszy blok dotyczy wprowadzania danych, wyświetlania wyników i wywoływania funkcji return_example2 (); Drugi blok dotyczy tej funkcji. Teraz spójrzmy na pełny kod dla następującego przykładu:

podczas 1
monit = 'Wprowadź wartość i naciśnij Enter. Ctrl+c do wyjścia ”;
x = wejście (monit, „s”); % Wartość wejściowa
clc (); % Czystej konsoli
return_example2 (x); % Funkcja return_example () wywołanie
koniec
funkcja return_example2 (x)
Jeśli isnan (str2double (x)) % Jeśli x nie jest numeryczne
Disp „Typ danych nie jest obsługiwany, powraca do następnego połączenia wierszu”
powrót; % Zwrot kończy return_example2 ()
Zakończ % i wróć do następnego wiersza rozmowy
% Jeśli wartość „x” znajduje się w określonych typach danych, funkcja
% return_example () trwa tutaj.
Disp „Wprowadzona wartość jest numeryczna, funkcja wykonana całkowicie”
koniec

W przeciwieństwie do poprzedniego przykładu, typ danych wejściowych wprowadzony z konsoli polecenia to ciąg, który jest konwertowany na wartość liczbową za pomocą funkcji return_example2 (). Jeśli wynik jest wartością niewiazową, funkcja jest zakończona za pomocą „powrotu”. Jeśli z drugiej strony wprowadzona wartość jest numeryczna, funkcja return_example2 () jest kontynuowana wraz z wykonaniem.

Poniższy obraz pokazuje wynik w oknie konsoli poleceń po wprowadzeniu wartości liczbowej:

Poniższy obraz pokazuje wynik w oknie konsoli poleceń, gdy wartość nie-numeryczna lub niekompatybilna jest wprowadzana z funkcją return_example ():

Wniosek

W tym artykule wyjaśniliśmy, jak działa ta prosta, ale bardzo przydatna funkcja w MATLAB. Aby lepiej zrozumieć, zawarliśmy dwa praktyczne przykłady, w których tworzymy proste aplikacje konsoli, które wykorzystują „powrót”, aby określić przerywanie lub pełne wykonywanie funkcji w oparciu o kilka warunków. Dołączyliśmy również obrazy, które pokazują, jak te przykłady działają w środowisku Matlab. Mamy nadzieję, że ten artykuł Matlab był pomocny. Sprawdź inne artykuły w Linux, aby uzyskać więcej wskazówek i informacji.