Bruno C. de Paula
Introdução à Programação
usando Processing
Programação Gráfica 2D
Estrutura de Seleção
Exercícios de Revisão
Estrutura de Seleção
2º Semestre 2009 > PUCPR > Design Digital
Revisão
Estrutura de Seleção Simples
 if(condição) {
 Primeira instrução a ser executada;
 Segunda instrução a ser executada;
 ...
}
 Se a condição for verdadeira, as instruções
do fluxo principal são executadas;
2
Revisão
Condição
 Condição pode ser verdadeira ou falsa;
 Exemplo:
 int peso = 100;
 if(peso>100) {
 println("Você está com 3 dígitos, Cuidado!");
}
 // No exemplo acima, só se o peso for maior
que 100 a mensagem é exibida.
3
Revisão
Estrutura de Seleção Composta
 if(condição) {
 Fluxo principal;
 Primeira instrução a ser executada;
 Segunda instrução a ser executada;
 } else {
 Fluxo alternativo;
 Primeira instrução a ser executada;
 Segunda instrução a ser executada;
}
 Se a condição for verdadeira, as instruções do fluxo
principal são executadas, caso contrário, o fluxo
alternativo é executado.
4
Exercício 1
 Cada um dos fragmentos de código a seguir
apresenta uma estrutura de seleção;
 Identifique:
 Quais são as condições sendo testadas;
 Qual é o bloco principal;
 Qual é o bloco alternativo (se houver);
 Qual dos dois (principal, alternativo
ou nenhum) blocos é executado.
5
Exercício 1, letra a
String nome = "Admin";
if(nome=="admin") {
 println("Olá, Administrador!");
}
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
6
Exercício 1, letra b
 String nome = "admin";
 String senha = "1234";
 if(nome=="admin" && senha=="1234") {

println("Olá, Administrador!");
 } else {

println("Acesso negado!");
 }
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
7
Exercício 1, letra c
bool portaAberta = true;
bool janelaAberta = false;
if(portaAberta || janelaAberta) {
 println("O alarme está tocando!");
}
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
8
Exercício 2
 O código a seguir exibe um objeto diferente
conforme o valor inicial dos parâmetros da
função criarFace;
 Indique qual é o objeto gerado a partir dos
valores iniciais das variáveis;
9
Exercício 2, letra a
 void criarFace(int rosto, int nariz) {

if(rosto==0) {

rect(10,10,80,80);

if(nariz==0) {
rect(40,40,20,20);

} else {

ellipse(50,50,10,5);

}


} else {
ellipse(50,50,90,90);


}
 }
 void setup () {

criarFace(0,0);
 }
10
Exercício 2, letra b
 void criarFace(int rosto, int nariz) {

if(rosto==0) {

rect(10,10,80,80);

if(nariz==0) {
rect(40,40,20,20);

} else {

ellipse(50,50,10,5);

}


} else {
ellipse(50,50,90,90);


}
 }
 void setup () {

criarFace(0,1);
 }
11
Exercício 2, letra c
 void criarFace(int rosto, int nariz) {

if(rosto==0) {

rect(10,10,80,80);

if(nariz==0) {
rect(40,40,20,20);

} else {

ellipse(50,50,10,5);

}


} else {
ellipse(50,50,90,90);


}
 }
 void setup () {

criarFace(1,0);
 }
12
Exercício 2, letra d
 void criarFace(int rosto, int nariz) {

if(rosto==0) {

rect(10,10,80,80);

if(nariz==0) {
rect(40,40,20,20);

} else {

ellipse(50,50,10,5);

}


} else {
ellipse(50,50,90,90);


}
 }
 void setup () {

criarFace(1,1);
 }
13
Exercício 2, letra e
 void criarFace(int rosto, int nariz) {

if(rosto==0) {

rect(10,10,80,80);

if(nariz==0) {
rect(40,40,20,20);

} else {

ellipse(50,50,10,5);

}


} else {
ellipse(50,50,90,90);


}
 }
 void setup () {

criarFace(2,2);
 }
14
Exercício 3
Baseado no código fornecido no
exercício anterior, crie uma função que
recebe como parâmetros:
Rosto;
Olhos;
Óculos;
Nariz;
Boca;
Bigode;
Dependendo dos parâmetros passados,
uma face diferente é construída.
15
Exercício 4
Crie a seguinte simulação:
Um personagem anda da esquerda
para a direita;
Ao chegar no fim da tela, ele volta
para o início;
Uma porta, no centro da tela, se
abre e se fecha de 5 em 5
segundos;
Se a porta estiver fechada, o
personagem não passa.
Se estiver aberta, ele passa.
16
Download

Exercicios de Revisao para prova, nao e necessario entrega