Você está na página 1de 3

IF/ELSE (Se/Senão)

É uma estrutura de decisão. Decide se um trecho de código deve ou não ser executado com base
em uma condição, que pode ser composta por uma ou mais comparações, se ela for verdadeira,
executa o código.
Por exemplo, podemos decidir se um LED será apagado ou aceso com base no estado do botão
(pressionado=true e não pressionado = false).

Sintaxe:

if( condição)
{
Caso a condição seja verdadeira, o código entre as chaves será executado uma vez.

Exemplo 1 – Acender um LED caso o valor de X seja maior que 10:

if( X > 10)


{
digitalWrite(pinLed,HIGH);
}

O else(senão) é utilizado para decidir o que fazer caso a condição do if seja falsa. Quando
houver a necessidade de decidir o que fazer caso o IF seja falso, ele será utilizado. Caso não
haja essa necessidade, seu uso não é obrigatório.

Exemplo 2 – IF/ELSE

if( X > 10) //Se o valor de X for maior que 10, o LED será aceso
{
digitalWrite(pinLed,HIGH);
}
else //Para qualquer valor de X menor que 10, o LED será apagado
{

digitalWrite(pinLed,LOW);
}
É possível utilizar vários IFs um após o outro.
Exemplo 3 – Para cada valor pré-definido de X, um LED diferente irá acender. Caso o X assuma
um valor diferente de qualquer um dos valores, todos os LEDs serão apagados.

if(X==5)
{
digitalWrite(LED1,HIGH);
}
else if(X==10)
{
digitalWrite(LED2,HIGH);
}
else if(X==15)
{
digitalWrite(LED3,HIGH);
}
else
{
digitalWrite(LED1,LOW);
digitalWrite(LED2,LOW);
digitalWrite(LED3,LOW);
}
Também haverão momentos em que será necessário aninhar os IFs, ou seja,
utilizar um IF dentro de outro.

Exemplo 4 – Aninhamento de IFs


if( X == true) //Se o valor de X for verdadeiro, o programa adentra as chaves
{
if( estadoLed == true) //Se o LED já estiver ligado, ele deve apagar
{
digitalWrite(pinLed,LOW);
}
else//Se o LED estiver apagado, ele deve acender
{
digitalWrite(pinLed,HIGH);
}
}

Comparações:
x == y (x é igual a y)
x != y (x é diferente de y)
x < y (x é menor que y)
x > y (x é maior que y)
x <= y (x é menor ou igual a y)
x >= y (x é maior ou igual a y)