Saindo de casa, se (if
) está chovendo, a condição “chovendo” é verdadeira (true
), então levo o guarda-chuva;
opcionalmente defino que, senão (else
), quando a condição “chovendo” é falsa (false
), levo óculos de sol.
if (chovendo) { // a condição "chovendo" é avaliada como true (verdadeiro) ou false (falso)
levarGuardaChuva(); // se verdadeira a condição, então este bloco de código será executado
} else { // termina o “se/então” e começa o “senão”
levarOculos(); // este bloco será executado apenas quando "chovendo" é falso
} // termina o bloco do “senão”, continua o passeio.
if (chovendo) { // a condição "chovendo" é avaliada como true (verdadeiro) ou false (falso)
levarGuardaChuva(); // se verdadeira a condição, então este bloco de código será executado
} // termina o bloco do “se/então”, continua o passeio.
void setup(){
size(200, 200);
}
void draw(){
if (mouseY<100) { // se a posição Y do mouse for menor que 100, o mouse estiver perto do topo da tela
fill(255); // então pede preenchimento branco (só executa quando mouseY é menor que 100)
} else { // termina o bloco “se/então” e começa o do “senão”
fill(100); // preenchimento cinza 100 (só executa quando mouseY não é menor que 100)
} // termina o bloco do “senão”
if (mousePressed) { // Se o mouse estiver pressionado
ellipse(mouseX, mouseY, 10, 10); // Então desenha um círculo na posição do mouse
} // termina o bloco (repare que não faz nada se o mouse estiver solto)
if (keyPressed && key == 'a') { // Se uma tecla foi precionada E (&&) a tecla foi o caractere 'a'
background(200); // Apague a tela com um fundo cinza (só executa sob as condições acima)
}
}
Os valores true
(verdadeiro) e false
(falso) são o resultado das comparações e das chamadas operações lógicas e (&&
), ou (||
) e não (!
). Podem ser armazenados em variáveis do tipo boolean (Booleano, em homenagem a George Boole) definidas pela pessoa que criou o programa, representando um estado.
Da mesma forma, são os valores acessados quando usamos as variáveis de sistema mousePressed e keyPressed.
operador | uso | descrição |
---|---|---|
> |
e1 > e2 |
verdadeiro se e1 maior que e2 |
>= |
e1 >= e2 |
verdadeiro se e1 maior ou igual a e2 |
< |
e1 < e2 |
verdadeiro se e1 menor que e2 |
<= |
e1 <= e2 |
verdadeiro se e1 menor ou igual a e2 |
== |
e1 == e2 |
verdadeiro se e1 igual a e2 |
!= |
e1 != e2 |
verdadeiro se e1 diferente de e2 |
&& |
e1 && e2 |
verdadeiro se e1 e e2 forem ambos verdadeiros |
\|\| |
e1 \|\| e2 |
verrdadeiro se e1 ou e2 forem verdadeiros |
! |
!e1 |
não e1 verdadeiro resulta falso, e não e1 falso resulta verdadeiro |
É comum encontraramos, além da composição das condições usando operadores lógicos, ìf
dentro de um ìf
ou de um else
.
No caso de repetidos if \ else if
podemos usar a estrutura switch\case
Confira também a abreviação de if
+ atribuições, o operador ternário ?:
REAS, C.; FRY, B. Processing: a programming handbook for visual designers and artists. Cambridge, Mass: MIT Press, 2007.
TERZIDIS, K. Algorithms for Visual Design Using the Processing Language. [s.l.] John Wiley & Sons, 2009.