Returfunksjon i MATLAB

Returfunksjon i MATLAB
Når vi kaller funksjoner for å behandle data i MATLAB, avhenger dynamikken i den prosessen ofte av flere faktorer, for eksempel typen data som sendes og resultatene av tråder innenfor samme funksjon. Disse betingede faktorene kan føre til at funksjonen går tilbake til anropspunktet før den er fullt utført. For å unngå utførelse av den nødvendige koden, dataprosesser som er uforenlige med funksjonen, eller ganske enkelt fordi det endelige resultatet ble oppnådd, tilbyr MATLAB retur () -funksjonen for dette formålet.

Følgende artikkel forklarer i detalj bruken av returfunksjonen i MATLAB.

Denne funksjonen er en del av de fleste programmeringsspråk gjennom tidene, og syntaks og operasjon er den samme for dem alle. I det følgende vil vi vise deg hvordan du bruker denne funksjonen i MATLAB med praktiske eksempler og bilder.

Syntaks for returfunksjonen i MATLAB

komme tilbake;

Beskrivelse av MATLAB -returfunksjon

Retur avslutter den for øyeblikket utførende funksjonen og returnerer programstrømmen til koden som funksjonen ble kalt. Når en funksjon kalles i Matlab, hopper programstrømmen til den, utfører den fullstendig og kommer tilbake for å fortsette på neste linje av samtalen. Noen ganger er det imidlertid nødvendig å avslutte funksjonen et sted i stedet for å utføre den grundig. Av denne grunn gir Matlab, som de fleste programmeringsspråk, returfunksjonen for dette formålet. Disse avkastningene gir betydelige fordeler for programmet, for eksempel hastighet, ved å unngå utførelse av unødvendige kodefragmenter. De gir også stabilitet i programmets utførelse siden en funksjon kan avsluttes i henhold til forholdene som er fastsatt av brukerprogrammereren for å ringe returen. For eksempel, hvis inndatatypen er uforenlig med funksjonen, vil ingen utføre og gå tilbake til neste linje i programmet som kalte det.

Disse avkastningene plasseres vanligvis inne i funksjonen i "if" -forhold, "bryter" eller andre typer hoppforhold der en variabel, resultat, datatype osv., Bestemmer om utførelsen av funksjonen skal fortsette eller om den skulle avslutte og gå tilbake til funksjonen den ble kalt. Deretter vil vi se noen praktiske eksempler på å lage funksjoner med avkastning for å hjelpe deg med å bedre forstå bruken av denne ressursen.

Hvordan du kan avbryte utførelsen av en funksjon med "retur" i matlab hvis inngangsparametrene er utenfor rekkevidde

I dette eksemplet vil vi lage en enkel konsollapplikasjon for å vise deg hvordan du kommer tilbake; det fungerer i matlab. Denne applikasjonen består av to deler; Den første er applikasjonen der vi oppgir verdiene gjennom konsollen, se resultatene og kaller funksjonen "return_example ()". Her er koden for denne delen:

mens 1
spør = 'Angi verdi og trykk Enter. Ctrl+c å avslutte ';
x = input (spør); % Inngangsverdi
clc (); % Klar konsoll
return_example (x); % Funksjon return_example () samtale
slutt

Den andre delen av denne koden er funksjonen "return_example ()". Denne funksjonen består av en "if" betinget med kortslutningslogikk som analyserer parametrene til "x". Hvis de er utenfor rekkevidde fra 0 til 100, viser den følgende melding på skjermen: “X” utenfor rekkevidde, returnerer ”og går tilbake til neste linje i samtalen til funksjonen“ return_example ”, og avbryter full utførelse av funksjonen.

Lag et skript, lim inn den komplette koden og trykk “Kjør”. Skriv inn forskjellige verdier ved å bruke kommandokonsollen og trykk Enter. Du kan også angi bruddpunkter på linjer 13 og 17 for å stoppe utførelsen på dette tidspunktet og kontrollere programstrømmen.

funksjonsresultat = return_example (x)
hvis (x 100) % x er utenfor rekkevidde fra 0 til 100
disp '"x" utenfor rekkevidden, returnerer til neste linje "return_example" samtale "
komme tilbake; % Retur avsluttes Return_example ()
slutt % og gå tilbake til neste linje i samtalen
% Hvis verdien av "x" er innenfor det spesifiserte området, er funksjonen
% return_example () fortsetter her.
disp '"x" i rekkevidde, funksjon utført helt'
slutt

Hvis parametrene til "X" er innenfor området som er spesifisert i "hvis" betinget, vil funksjonen return_example () bli fullt utført. Ellers vil utførelsen bli avbrutt og gå tilbake til koden som den ble kalt.

Følgende bilde viser hva som skjer når du oppgir en verdi innenfor det spesifiserte området. I dette tilfellet utføres Return_Example -funksjonen fullstendig. Som du kan se, stoppes programstrømmen ved breakpoint av linje 17.

Følgende bilde viser hva som skjer hvis du oppgir en verdi som er utenfor det spesifiserte området. I dette tilfellet blir Return_Example -funksjonen avbrutt av “Retur. Som du kan se, stoppes programstrømmen ved breakpoint på linje 13.

Hvordan du kan avbryte utførelsen av en funksjon med "retur" i matlab hvis inngangsdatatypene ikke er kompatible

I forrige eksempel viste vi deg hvordan du kan stoppe utførelsen av en funksjon og returnere programstrømmen til koden som kalte den. Dette oppnås ved å plassere som en betingelse for det et forhåndsbestemt utvalg av verdier i det betingede "hvis" som vi plasserte i koden til return_example () -funksjonen.

I det følgende eksemplet vil vi også opprette en konsollapplikasjon og bruke returfunksjonen til å avbryte return_example2 -funksjonen hvis inndatatypen som er sendt i samtalen er uforenlig med de som er akseptert av funksjonen.

Som i forrige eksempel, vil vi lage en konsollapplikasjon som består av to blokker. Den første blokken er for å legge inn data, vise resultater og kalle Return_example2 () -funksjonen; Den andre blokken er for denne funksjonen. La oss nå se på den komplette koden for følgende eksempel:

mens 1
spør = 'Angi verdi og trykk Enter. Ctrl+c å avslutte ';
x = input (spurt, “s”); % Inngangsverdi
clc (); % Klar konsoll
return_example2 (x); % Funksjon return_example () samtale
slutt
funksjon return_example2 (x)
Hvis ISNAN (str2double (x)) % hvis x ikke er numerisk
disp 'Datatypen støttes ikke, kommer tilbake til neste linjeanrop'
komme tilbake; % Retur avslutter return_example2 ()
slutt % og gå tilbake til neste linje i samtalen
% Hvis verdien av "x" er innenfor de spesifiserte datatypene, er funksjonen
% return_example () fortsetter her.
disp 'den angitte verdien er numerisk, funksjon utført fullstendig'
slutt

I motsetning til det forrige eksemplet, er inngangsdatatypen som er angitt fra kommandokonsoll. Hvis resultatet er en ikke-numerisk verdi, avsluttes funksjonen med "retur". Hvis den angitte verdien derimot er numerisk, fortsetter Return_Example2 () -funksjonen med utførelsen.

Følgende bilde viser resultatet i kommandokonsollvinduet når en numerisk verdi legges inn:

Følgende bilde viser resultatet i kommandokonsollvinduet når en ikke-numerisk eller inkompatibel verdi legges inn med return_example () -funksjonen:

Konklusjon

I denne artikkelen har vi forklart hvordan denne enkle, men veldig nyttige funksjonen fungerer i MATLAB. For bedre forståelse har vi inkludert to praktiske eksempler der vi lager enkle konsollapplikasjoner som bruker "retur" for å bestemme aborten eller full utførelse av en funksjon basert på flere forhold. Vi har også tatt med bilder som viser hvordan disse eksemplene fungerer i Matlab -miljøet. Vi håper du fant denne Matlab -artikkelen nyttig. Sjekk andre Linux -hint -artikler for flere tips og informasjon.