Introdução ao loop While no MATLAB

O MATLAB é uma linguagem de programação científica muito usada para fins acadêmicos e de pesquisa. Muitas indústrias também o estão usando, mas universidades e organizações de pesquisa são os principais clientes dessa ferramenta de software proprietária. O MATLAB é desenvolvido pelo MathWorks e, para usá-lo, é necessário adquirir uma licença. Para estudantes e iniciantes, no entanto, ele vem com uma versão de avaliação por tempo limitado.

O MATLAB é tão popular que é usado faculdades e universidades em todo o mundo para ensinar computação e engenharia científica, como processamento de sinais, sistema de controle, matemática avançada e muitas outras disciplinas. Hoje, mesmo após a fácil disponibilidade de software de código aberto, como R e Python, para trabalhos semelhantes, o MATLAB ainda é popular e usado extensivamente.

Neste artigo, fornecemos blocos de construção básicos do MATLAB e focamos especificamente em um loop while. Se você está familiarizado com outras linguagens de programação, deve estar ciente de loops como loop for, if loop, while loop, etc. Falaremos sobre o mesmo no contexto do MATLAB. E, se você é completamente novo em programação, também não precisa se preocupar, pois as discussões neste artigo estão no nível iniciante absoluto e você não precisa ter um histórico de programação. Mas, espera-se que você conheça os tipos de dados básicos no MATLAB.

Sintaxe

Nesta seção, forneceremos a sintaxe de um loop while e, posteriormente, explicaremos o mesmo no método passo a passo.

while expression
statements
end

Explicação: -

  1. While é a palavra-chave para o loop while.
  2. Uma expressão é uma condição que precisa ser verdadeira para que o loop while funcione.
  3. Instruções são as ações que seriam executadas se a condição ou expressão for verdadeira.
  4. O fim é a palavra-chave que sugeriu o fechamento do loop.

Para entender melhor a sintaxe, vamos dar um exemplo.

Exemplo: -

a = 10;
% while loop execution example
while( a < 20 )
fprintf('value of a: %d\n', a);
a = a + 1;
end

Explicação do exemplo: -

  1. Definimos uma variável igual a 10
  2. Uma linha começando com% é o comentário no MATLAB, para que possamos ignorar o mesmo.
  3. O loop while inicia e a condição é menor que 20. O que significa é que o loop while será executado até que o valor de a seja menor que 20. Observe que, atualmente, o valor de a é 10.
  4. A próxima linha imprime o valor atual de ae depois a próxima linha é executada
  5. A linha a = a + 1, adiciona 1 a e depois a condição while é novamente verificada. Agora, o valor de a é 11, que ainda é menor que 20, então o loop é executado novamente.
  6. Por fim, o loop é executado até que um atinja o valor 19 e, depois disso, para.

A saída detalhada será mostrada na seção de exemplo.

Diagrama de fluxo

Vamos entender o diagrama de fluxo de um loop while para melhor clareza.

O diagrama de fluxo acima é bastante simples e auto-explicativo. É o mesmo que as etapas descritas acima na seção de sintaxe. Quando a condição booleana é verdadeira, as instruções são executadas, caso contrário, elas não fazem nada e a execução do loop para.

Como enquanto o loop funciona no MATLAB

O funcionamento do loop while é bastante claro no diagrama de fluxo acima. Uma explicação passo a passo da sintaxe também é fornecida na seção de sintaxe. Nesta seção, explicaremos as mesmas idéias com mais detalhes.

Um loop while possui principalmente três partes que precisam ser entendidas.

  1. Tem que haver alguma condição booleana que seria avaliada pelo loop.
  2. É necessário ter alguma ação para essa condição booleana. ou seja, o que acontece quando a condição é verdadeira e o que acontece quando a condição é falsa.
  3. O controle do loop se move de acordo com a natureza da condição, ou seja, calcula alguma coisa ou para de funcionar.

Com base na condição fornecida, um loop while pode ser executado por um número finito de vezes produzindo uma saída finita ou pode durar o maior tempo possível, a menos que seja interrompido manualmente.

Um loop infinito pode se parecer abaixo:

N=1;
While N < 5
N = N-1
end

Você pode observar aqui que, à medida que o valor de N está diminuindo em cada iteração, ele sempre satisfará a condição e, portanto, continuará funcionando infinitamente. Não é simples e tão poderoso?

Exemplos (codificação adequada com saída)

Vamos falar de alguns exemplos para entender melhor.

Exemplo 1: - Este é o mesmo exemplo acima

a = 10;
% while loop execution example
while( a < 20 )
fprintf('value of a: %d\n', a);
a = a + 1;
end

Resultado: -

 Valor de a: 10 Valor de a: 11 Valor de a: 12 Valor de a: 13 Valor de a: 14 Valor de a: 15 Valor de a: 16 Valor de a: 17 Valor de a: 17 Valor de a: 18 Valor de a: 19 

Exemplo 2: -

i = 1;
s = 0;
% while loop execution example
while( i < 3 )
fprintf('intermediate sum: %d\n', s);
s = s + i;
i = i + 1;
end

Resultado: -

 soma intermediária = 0 soma intermediária = 1 

Exemplo 3: -

i = 1;
while (i < 3)
i
i = i + 1;
end

Resultado : -

 i = 1 i = 2 

Conclusão

Com os exemplos e explicações acima, espero que o artigo tenha uma boa idéia do loop while no MATLAB. Os alunos são aconselhados a executar os exemplos mostrados na janela de comando do MATLAB e ver por si mesmos como a saída está chegando. Como próxima etapa, os alunos são aconselhados a fazer pequenas alterações nos códigos de exemplo e executar o mesmo para ver qual é o efeito na saída. Depois disso, eles também podem praticar vários exemplos disponíveis na Web ou tentar criar alguns exercícios simples. A codificação tem tudo a ver com prática, portanto continue praticando o máximo possível.

Artigo recomendado

Este foi um guia para o Loop While no Matlab. Aqui discutimos os conceitos e alguns exemplos do While Loop no Matlab para entender melhor. Você também pode consultar nossos outros artigos sugeridos para saber mais -

  1. O que é ETL?
  2. O que é ciência de dados
  3. O que é o Teradata?
  4. As 6 principais alternativas da AWS
  5. Guia para Loop Enquanto em R
  6. Funções do MATLAB
  7. Compilador Matlab | Aplicações do Matlab Compiler

Categoria: