Função de retorno no MATLAB

Função de retorno no MATLAB
Quando chamamos funções para processar dados no MATLAB, a dinâmica desse processo geralmente depende de vários fatores, como o tipo de dados enviados e os resultados dos threads dentro da mesma função. Esses fatores condicionais podem fazer com que a função retorne ao seu ponto de chamada antes de ser totalmente executada. Para evitar a execução do código necessário, os processos de dados incompatíveis com a função ou simplesmente porque o resultado final foi obtido, o MATLAB oferece a função retorn () para esse fim.

O artigo a seguir explica em detalhes o uso da função de retorno no MATLAB.

Esta função faz parte da maioria das linguagens de programação de todos os tempos, e sua sintaxe e operação são as mesmas para todas elas. A seguir, mostraremos como usar essa função no Matlab com exemplos e imagens práticas.

Sintaxe da função de retorno no MATLAB

retornar;

Descrição da função de retorno do MATLAB

O retorno termina a função atualmente em execução e retorna o fluxo do programa para o código do qual a função foi chamada. Quando uma função é chamada no MATLAB, o fluxo do programa salta para ele, o executa completamente e retorna para continuar na próxima linha da chamada. No entanto, às vezes é necessário terminar a função em algum lugar em vez de executá -la completamente. Por esse motivo, o MATLAB, como a maioria das linguagens de programação, fornece a função de retorno para esse fim. Esses retornos trazem benefícios significativos ao programa, como a velocidade, evitando a execução de fragmentos de código desnecessários. Eles também fornecem estabilidade na execução do programa, pois uma função pode ser encerrada de acordo com as condições estabelecidas pelo programador do usuário para chamar o retorno. Por exemplo, se o tipo de dados de entrada for incompatível com a função, ninguém será executado e retornará à próxima linha do programa que a chamou.

Esses retornos geralmente são colocados dentro da função em condicionais "se", "switch" ou outros tipos de condições de salto em que uma variável, resultado, tipo de dados, etc., determina se a execução da função deve continuar ou se deve encerrar e retornar à função da qual foi chamado. Em seguida, veremos alguns exemplos práticos de criação de funções com retornos para ajudá -lo a entender melhor o uso deste recurso.

Como abortar a execução de uma função com "retorno" no MATLAB se os parâmetros de entrada estiverem fora de intervalo

Neste exemplo, criaremos um aplicativo de console simples para mostrar como retornar; Funciona no Matlab. Este aplicativo consiste em duas partes; O primeiro é o aplicativo em que inserimos os valores através do console, consulte os resultados e chame a função "return_example ()". Aqui está o código para esta seção:

enquanto 1
prompt = 'Digite o valor e pressione Enter. Ctrl+C para sair ';
x = entrada (prompt); % Valor de entrada
clc (); % Console claro
return_example (x); % Function return_example () chamada
fim

A segunda parte deste código é a função "return_example ()". Esta função consiste em um condicional "se" com lógica de curto-circuito que analisa os parâmetros de "x". Se eles estiverem fora do intervalo de 0 a 100, ele exibe a seguinte mensagem na tela: "X" fora do alcance, retornar "e retorna à próxima linha da chamada para a função" return_example ", interrompendo a execução completa de a função.

Crie um script, cole o código completo e pressione "Run". Digite vários valores usando o console de comando e pressione Enter. Você também pode definir pontos de interrupção nas linhas 13 e 17 para interromper a execução neste momento e controlar o fluxo do programa.

resultado da função = return_example (x)
Se (x 100) % x estiver fora de variação de 0 a 100
disp '"x" fora do alcance, retorna à próxima linha "Return_example" Call'
retornar; % De retorno termina o retorno_example ()
final % e retorne à próxima linha da chamada
% Se o valor de "x" estiver dentro do intervalo especificado, a função
% return_example () continua aqui.
disp '"x" no alcance, função executada completamente'
fim

Se os parâmetros de "x" estiverem dentro do intervalo especificado no condicional "se", a função return_example () será totalmente executada. Caso contrário, sua execução será interrompida e retornará ao código do qual foi chamado.

A imagem a seguir mostra o que acontece quando você insere um valor dentro do intervalo especificado. Nesse caso, a função return_example é executada completamente. Como você pode ver, o fluxo do programa é interrompido no ponto de interrupção da linha 17.

A imagem a seguir mostra o que acontece se você inserir um valor que está fora do intervalo especificado. Nesse caso, a função Return_Example é interrompida por "Return", e o fluxo do programa retorna à próxima linha da chamada return_example (). Como você pode ver, o fluxo do programa é interrompido no ponto de interrupção da linha 13.

Como abortar a execução de uma função com "retorno" no MATLAB se os tipos de dados de entrada não forem compatíveis

No exemplo anterior, mostramos como interromper a execução de uma função e retornar o fluxo do programa ao código que o chamou. Isso é realizado colocando como uma condição para ela uma faixa predeterminada de valores na função “se” condicional que colocamos dentro do código da função return_example ().

No exemplo a seguir, também criaremos um aplicativo de console e usaremos a função de retorno para abortar a função return_example2 se o tipo de dados de entrada enviado na chamada for incompatível com aqueles aceitos pela função.

Como no exemplo anterior, criaremos um aplicativo de console que consiste em dois blocos. O primeiro bloco é para inserir dados, exibir resultados e chamar a função return_example2 (); O segundo bloco é para esta função. Agora, vejamos o código completo do exemplo a seguir:

enquanto 1
prompt = 'Digite o valor e pressione Enter. Ctrl+C para sair ';
x = entrada (prompt, "s"); % Valor de entrada
clc (); % Console claro
return_example2 (x); % Function return_example () chamada
fim
função return_example2 (x)
Se isnan (str2double (x)) % se x não for numérico
disp 'O tipo de dados não é suportado, retorna à próxima chamada de linha'
retornar; % O retorno termina o retorno_example2 ()
final % e retorne à próxima linha da chamada
% Se o valor de "x" estiver dentro dos tipos de dados especificados, a função
% return_example () continua aqui.
disp 'o valor inserido é numérico, função executada completamente'
fim

Ao contrário do exemplo anterior, o tipo de dados de entrada inserido no console de comando é uma string, que é convertida em um valor numérico usando str2double () na função return_example2 (). Se o resultado for um valor não numérico, a função será encerrada com "retorno". Se, por outro lado, o valor inserido for numérico, a função return_example2 () continuará com sua execução.

A imagem a seguir mostra o resultado na janela do console de comando quando um valor numérico é inserido:

A imagem a seguir mostra o resultado na janela do console de comando quando um valor não numérico ou incompatível é inserido com a função return_example ():

Conclusão

Neste artigo, explicamos como essa função simples, mas muito útil, funciona no Matlab. Para uma melhor compreensão, incluímos dois exemplos práticos nos quais criamos aplicativos simples de console que usam "retorno" para determinar o aborto ou a execução completa de uma função com base em várias condições. Também incluímos imagens que mostram como esses exemplos funcionam no ambiente do MATLAB. Esperamos que você tenha achado este artigo do Matlab. Verifique outros artigos de dica do Linux para obter mais dicas e informações.