top of page

Estruturas de Repetição

A Estrutura de Repetição é utilizada quando é necessário executar um determinado bloco de instruções várias vezes. A quantidade de vezes é determinada pelo programador e deve ser finita.

 

A Estrutura de Repetição permite uma economia de linhas de código, uma vez que não é necessário reescrever as instruções repetidamente; basta executar a mesma rotina várias vezes

A repetição com teste no início permite repetir um determinado bloco de instruções enquanto a condição avaliada for verdadeira.

A verificação é realizada antes de executar uma determinada rotina, através de um teste lógico feito no início. Enquanto a condição 1 for verdadeira, será executada a rotina (1); quando a condição for falsa, a execução é interrompida. Se a condição for falsa já no primeiro teste, a rotina nunca será executada.

Repetição com Teste no Início

Diagrama de Blocos

Quadro FR14 - Estrutura de Repetição com Teste no Início

Exemplo: Desenvolver um projeto utilizando a porta PWM para controlar a luminosidade de um LED.

Solução

Exemplo: Desenvolver um projeto utilizando uma porta analógica e um potenciômetro para controlar a velocidade de iluminação de um LED. Quando o valor do potenciômetro for igual ou menor que 1000, um LED deverá permanecer ligado. Quando esse valor for inferior ou igual a 500, outro LED deverá piscar com uma velocidade proporcional ao valor do potenciômetro.

Solução

Exemplo: Desenvolver um projeto utilizando um Sensor de Luz LDR e um Diodo Laser para simular um sistema de alarme. Quando algum objeto bloquear a recepção da luz do diodo laser pelo Sensor de Luz LDR, um alarme deverá ser disparado e um LED ficará aceso. O alarme e o LED podem ser desligados por meio de um botão.

Solução

A repetição com variável de controle permite que um determinado bloco de instruções seja executado um número fixo de vezes, determinado pelo programador.

O símbolo do diagrama de blocos utilizado é o de preparação.

A verificação de execução é realizada pela própria estrutura. Esta estrutura utiliza um contador que determina quantas vezes a execução será repetida, encerrando quando esse contador atingir o limite superior ou inferior definido.

Dentro do número determinado de repetições, a rotina (1) é executada. Observa-se que não há um teste lógico contínuo para este tipo de repetição.

Repetição com Variável de Controle

Diagrama de Blocos

Quadro FR15 - Estrutura de Repetição com Varíavel de Controle

Exemplo: Desenvolver um projeto utilizando um sensor de movimento com um micro servo para simular a abertura de uma cancela.

Solução

Esta estrutura utiliza uma variável do tipo int para controle (Controle), iniciando com um valor inicial (Início). A execução continua enquanto uma expressão relacional (Expressão) for verdadeira, ajustando-se o contador através de um passo de incremento/decremento (Incremento). O laço é encerrado automaticamente quando a expressão não é mais satisfeita.

No Arduino, podemos utilizar o comando break para encerrar manualmente um laço do tipo Repetição com Variável de Controle antes que a condição de término seja alcançada.

Exemplo: Desenvolver um projeto utilizando dois sensores de distância ultrassônico e um micro servo para simular a abertura de uma cancela.

Solução

A repetição com teste no final permite repetir um determinado bloco de instruções até que uma condição seja verdadeira. A verificação é realizada após a execução da rotina pelo menos uma vez, através de um teste lógico feito no final. Independentemente da validade da condição inicial, a rotina é executada pelo menos uma vez. Após a execução, é aplicado um teste lógico. Se a condição for falsa, a rotina é executada novamente; caso a condição seja verdadeira, a execução é encerrada.

Repetição com Teste no Fim

Diagrama de Blocos

Quadro FR16 - Estrutura de Repetição com Teste no Fim

Exemplo: Desenvolver um projeto para desligar um diodo laser, utilizando um sensor de toque capacitivo.

Solução

bottom of page