Bruno C. de Paula
Introdução à Programação
usando Processing
Programação Gráfica 2D
Estrutura de Seleção
Exercício
Estrutura de Seleção
2º Semestre 2009 > PUCPR > Design Digital
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.
2
Exercício 1, letra a
int nota = 5;
if(nota<7)
 println("Você está com nota baixa!");
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
3
Exercício 1, letra a
Resposta
int nota = 5;
if(nota<7)
 println("Você está com nota baixa!");
 Condição: nota menor que 7
 Bloco principal: println("Você está com nota baixa!");
 Bloco alternativo: não há;
 Bloco executado: principal.
4
Exercício 1, letra b
int idade = 5;
if(idade>=18)
 println("Você pode dirigir!");
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
5
Exercício 1, letra c
boolean sol = true;
boolean chuva = false;
if(sol && chuva)
 println("Casamento de viúva");
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
6
Exercício 1, letra d
 float salario = 1000;
 float desconto = 0.3;
 salario
= salario - salario * desconto;
 if(salario<=1000)
 println("Estagiário");
 else
 println("Chefe");
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
7
Exercício 1, letra e
 float salario = 1600;
 float desconto = 0.3;
 salario
= salario - salario * desconto;
 if(salario<=1000)
 println("Estagiário");
 else
 println("Chefe");
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
8
Exercício 1, letra f
 float nota = 7;
 if(nota>=7) {
 println("Aprovado");
 } else {
 println("Reprovado");
}
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
9
Exercício 1, letra g
 float nota = 6.9;
 if(nota>=7) {
 println("Aprovado");
 } else {
 println("Reprovado");
}
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
10
Exercício 1, letra h
 float nota = 7.1;
 if(nota>=7) {
 println("Aprovado");
 } else {
 println("Reprovado");
}
 Condição:
 Bloco principal:
 Bloco alternativo:
 Bloco executado:
11
Exercício 2
 O código a seguir exibe um objeto diferente
conforme o valor inicial das variáveis a, b e c
e d;
 Indique qual é o objeto gerado a partir dos
valores iniciais das variáveis;
12
Exercício 2, letra a

int a=0, b=0, c=0, d=0;

background(255);

if(a==1) {

fill(255,0,0); // Vermelho

d = d + 1;

} else {
fill(0,255,0); // Verde


}

if(b==1) {
ellipse(50,50,30,30);


} else {

rect(10,10,80,80);

d = d + 1;

}

if(c==0) {

line(0,0,100,100);

d = d + 1;

} else {
line(100,0,0,100);


}

if(d>2) {

fill(0,0,255);

ellipse(50,50,10,10);

}
13
Exercício 2, letra a, Resposta

int a=0, b=0, c=0, d=0;

background(255);

if(a==1) {

fill(255,0,0); // Vermelho

d = d + 1;

} else {
fill(0,255,0); // Verde


}

if(b==1) {
ellipse(50,50,30,30);


} else {

rect(10,10,80,80);

d = d + 1;

}

if(c==0) {

line(0,0,100,100);

d = d + 1;

} else {
line(100,0,0,100);


}

if(d>2) {

fill(0,0,255);

ellipse(50,50,10,10);

}
14
Exercício 2, letra b

int a=1, b=0, c=0, d=0;

background(255);

if(a==1) {

fill(255,0,0); // Vermelho

d = d + 1;

} else {
fill(0,255,0); // Verde


}

if(b==1) {
ellipse(50,50,30,30);


} else {

rect(10,10,80,80);

d = d + 1;

}

if(c==0) {

line(0,0,100,100);

d = d + 1;

} else {
line(100,0,0,100);


}

if(d>2) {

fill(0,0,255);

ellipse(50,50,10,10);

}
15
Exercício 2, letra c

int a=1, b=1, c=1, d=0;

background(255);

if(a==1) {

fill(255,0,0); // Vermelho

d = d + 1;

} else {
fill(0,255,0); // Verde


}

if(b==1) {
ellipse(50,50,30,30);


} else {

rect(10,10,80,80);

d = d + 1;

}

if(c==0) {

line(0,0,100,100);

d = d + 1;

} else {
line(100,0,0,100);


}

if(d>2) {

fill(0,0,255);

ellipse(50,50,10,10);

}
16
Exercício 2, letra d

int a=0, b=2, c=3, d=4;

background(255);

if(a==1) {

fill(255,0,0); // Vermelho

d = d + 1;

} else {
fill(0,255,0); // Verde


}

if(b==1) {
ellipse(50,50,30,30);


} else {

rect(10,10,80,80);

d = d + 1;

}

if(c==0) {

line(0,0,100,100);

d = d + 1;

} else {
line(100,0,0,100);


}

if(d>2) {

fill(0,0,255);

ellipse(50,50,10,10);

}
17
Exercício 3
 Neste exercício você vai desenvolver
diversas animações e controlar o fluxo
destas animações usando estrutura de
seleção;
 Para isso, você vai usar o comando if e vai
criar variáveis para controlar a animação.
18
Exercício 3, letra a
 A elipse vai da posição inicial da tela até o
centro.
19
Exercício 3, letra a, Resposta
 float px;
 void setup() {

size(300,300);

px = 0;
 }
 void draw() {

background(0);

ellipse(px, height/2, 10, 10);

if(px<=150) {

px = px + 5;

}
 }
20
Exercício 3
 B) A elipse faz um movimento na forma
um quadrado (frente, baixo, trás, cima)
pára no início;
 C) A elipse faz um movimento na forma
um quadrado (frente, baixo, trás, cima)
repete o movimento.
de
e
de
e
21
Exercício 4
 Crie uma função que desenhe um sinaleiro;
 Esta função pode receber como parâmetro:
 0 – Exibe o sinal de PARE (vermelho,
superior);
 1 – Exibe o sinal de Atenção (laranja,
meio);
 2 – Exibe o sinal de Passe (verde,
abaixo);
22
Exercício 5
 Faça um programa que utilize a função
criada no exercício 4;
 Neste programa, um sinaleiro deve
alternar suas cores conforme a passagem
do tempo.
23
Exercício 6
 Crie uma função que desenhe uma ponte
suspensa;
 Esta função pode receber como parâmetro
qual é a angulação da ponte;
 Dependendo da angulação, a ponte é
desenhada levantada ou abaixada.
24
Exercício 7
 Crie uma animação de um automóvel;
 Este automóvel deve percorrer um conjunto
de ruas, voltar ao local inicial e refazer seu
trajeto;
25
Exercício 8
 Faça um programa que integre os
exercícios de 4 até 7;
 Neste programa, um automóvel deve realizar
um percurso, passando por uma ponte
suspensa, e parando em um sinaleiro.
26
Download

Exercício F11 - Bruno Campagnolo de Paula