if / else

if/else permite um controle maior sobre o fluxo de código do que a sentença if básica, tornando possível que múltiplos testes sejam agrupados. Por exemplo, uma entrada analógica poderia ser verificada e uma ação específica seria tomada se o valor de input fosse menor que 500 e outra ação seria tomada se o input fosse 500 ou mais. O código seria assim:

if (pinFiveInput < 500)
{
// ação A
}
else
{
// ação B
}

else pode preceder outro teste if , e assim mltiplos testes, mutuamente exclusivos, podem ser realizados ao mesmo tempo.

Cada teste precede o próximo até que um teste com vavlor verdadeiro é encontrado. Quando um teste com valor verdadeiro é encontrado o seu bloco de código associado é execuatod e então o programa salta para a sequencia após todo o bloco if/else. Se a nenhum teste é atribuido o valor verdadeiro o bloco que estiver no else sozinho é executado, se houver algum.

Note que um bloco else if pode ser usado com ou sem um bloco else final. Um número ilimitado destes ramos else if é permitido.

if (pinFiveInput < 500)
{
// faça a coisa A
}
else if (pinFiveInput >= 1000)
{
// faça a coisa B
}
else
{
// faça a coisa C
}

Outro modo de fazer testes de ramificações mutuamente exclusivas é através da sentença switch case.

Veja também:

switch case

Página de início da referência

Correções, sugestões, e nova documentação devem ser enviadas ao Forum.

O texto de referência do Arduino está baixo uma Licença Creative Commons Attribution-ShareAlike 3.0. Amostras de código utilizadas na referência foram deixados  ao domínio público.

 

O conteúdo desta página é uma tradução para o português a partir do site original do Arduino.

Esta obra está sob uma Licença Creative Commons.

Creative Commons License