Bruno C. de Paula
Introdução à Programação
usando Processing
Programação Gráfica 2D
Exercícios de Revisão para
Prova
2º Semestre 2009 > PUCPR > Design Digital
Exercício 01 – Indique
corretamente o tipo de dado
A - ( ) 100000
B - ( ) “123.5”
C - ( ) 'c'
D - ( ) “int”
E - ( ) 0.5
F - ( ) true
14/10/09
(a) – Lógico
(b) – Inteiro
(c) – Ponto
flutuante
(d) –
Caractere
(e) - String
2
Exercício 02 – Em um programa
vazio, para cada uma das
variáveis definidas, marque com
um X qual (ou quais) dos
comandos pode seguir à
definição da variável
(A) – int a;
( ) a=1;
( ) a=1.0;
( ) a = a * 1;
14/10/09
3
(B) – String n;
( ) n = n + 1;
( ) n=Bruno;
( ) n = "Bruno";
14/10/09
4
(C) – float h;
( ) h = 1.2;
( ) h = 1000;
( ) h = "h";
( ) h = 1000*2;
14/10/09
5
(D) – boolean inter;
( ) inter = 1>2;
( ) inter = “true”;
( ) inter = 2 * 3;
( ) inter = int(2*3);
14/10/09
6
Exercício 03 – Ordene o código a
seguir, de modo que o resultado
final seja a exibição do número 5
println(xy);
xy = mn + ab;
mn = xy / 10;
ab = xy % 10;
xy = 23;
int mn, ab, xy;
14/10/09
7
Exercício 04 – TESTE DE MESA Determine o resultado na variável a e na
variável s após a execução do algoritmo a
seguir
int
a = 1234;
String s = "-";
s = s + (a % 10);
a = a / 10;
s = s + (a % 10);
a = a / 10;
s = s + (a % 10);
a = a / 10;
14/10/09
s = s + (a % 10);
8
Exercício 05 – Identifique, no código a
seguir: o nome, a utilidade e o número
de parâmetros de cada função chamada
size(300,300);
translate(width/2, height/2);
beginShape();
vertex(-100,-100);
vertex(100,-100);
vertex(0,100);
endShape(CLOSE);
14/10/09
9
Exercício 06 – A partir do desenho
fornecido e do esqueleto de código,
complete
o código que gera o desenho
a)
size(200,200);
int x = ??1??;
int y = ??2??;
translate(width/2,height/2);
line(0,0,y,0);
rotate(PI/x);
line(0,0,y*2,0);
rotate(PI/x);
line(0,0,y*4,0);
rotate(PI/x);
line(0,0,y*2,0);
rotate(PI/x);
14/10/09
line(0,0,y,0);
10
b)
size(200,200);
background(255);
translate(??1??, ??2??);
arc(0,0,??3??,??4??,0, ??5??);
ellipse(-width/??6??,0, 10, 10);
ellipse(+width/??6??,0,10,10);
14/10/09
11
c)
size(200,200);
translate(width/2,height/2);
ellipse(0,0,??1??,??2??);
line(0,0,0,-??3??);
rotate(PI/??4??);
scale(0.5);
line(0,0,0,-??3??);
14/10/09
12
Exercício 07 – A partir do código a seguir,
gere o desenho
a)
size(200,200);
noFill();
translate(width/2,height/2);
ellipse(0,0,100,100);
rectMode(CENTER);
rect(0,0,100,100);
beginShape();
vertex(0,100);
vertex(100,0);
vertex(0,-100);
14/10/09
vertex(-100,0);
endShape(CLOSE);
13
Em sua prova você receberá algo
semelhante a isto para desenhar sua
resposta:
14/10/09
14
Exercício 08 – Indique:
- Quantos parâmetros cada função
recebe,
- Se possui ou não um retorno,
- Exemplo de chamada
14/10/09
15
a)
void desenharLosango(float s)
{
beginShape();
vertex(0,s);
vertex(s,0);
vertex(0,-s);
vertex(-s,0);
endShape(CLOSE);
}
14/10/09
16
b)
void sortearTriangulo(float r1, float r2)
{
float x = random(r1);
float y = random(r2);
triangle (x, y, x+100, y-100, x-100, y-100);
}
14/10/09
17
c)
int obterSegundosHora() {
int m = minute();
int s = second();
return m*60 + s;
}
14/10/09
18
Exercício 09 – Faça o teste de mesa para
o fragmento de código a seguir
14/10/09
19
int sd(int d) {
int a = d % 10;
a)
return a;
}
void setup()
{
int x = 524;
int y = sd(x) + sd(x/10) + sd(x/100);
println(y);
}
14/10/09
20
String func(String a, String b)
b)
{
return (b + a + a + b);
}
void setup()
{
String s = func(" a ",func(" b "," c "));
println(s);
}
14/10/09
21
Exercício 10 – Não há!
Refaça o número 1 do exercício F07.
Com certeza um dos itens deste exercício
será usado na prova
14/10/09
22
Download

do exercício - Bruno Campagnolo de Paula