Академический Документы
Профессиональный Документы
Культура Документы
Kenia Kodel
UFS - DComp - Prof. Kenia Kodel
Situao Problema
Definio de Vetor
Um vetor consiste num item de composio de
programas de computador til ao armazenamento de
dados encadeados.
var
<Identificador>: array[1..N] of <tipo>;
Onde:
Esboo de Vetor
var
<Identificador>: array[1..N]of <tipo>;
Esquematicamente:
dado1 dado2 dado3 dado4
dadoN
...
vetor
Sendo: dado valores de um tipo determinado.
UFS - DComp - Prof. Kenia Kodel
Exemplo de Vetor
var
Beto
Caio
Dani
Zeca
...
30
Alunos
UFS - DComp - Prof. Kenia Kodel
Manipulao dos
Dados do Vetor
Para acessar os dados mantidos em vetor, so usados: o nome
do vetor seguido pela posio que o dado ocupa, entre
colchetes.
Exemplo: Alunos[5]:= Gil;
Ana
Beto
Caio
Dani
Gil
Zeca
...
30
Alunos
UFS - DComp - Prof. Kenia Kodel
Manipulao dos
Dados do Vetor
Os dados de tipo T mantidos em vetor so manipulados
elemento-a-elemento; da mesma forma como variveis nocompostas de tipo T so manipuladas.
Exemplo: writeln(Alunos[30]);
Ana
Beto
Caio
Dani
Gil
Zeca
...
30
23
1
09
2
17
3
40
4
03
5
...
35
Vetor
for Cont:=1 to 35 do
readln(Vetor[Cont]);
Est correto?
UFS - DComp - Prof. Kenia Kodel
for Cont:=1 to 35 do
Vetor[Cont]:=-1;
14
23
1
09
2
17
3
40
4
03
5
...
35
Vetor
UFS - DComp - Prof. Kenia Kodel
11
23
1
09
2
17
3
40
4
03
5
...
35
Vetor
UFS - DComp - Prof. Kenia Kodel
readln(D, P);
Vetor[P]:=D;
Est correto?
13
23
1
09
2
17
3
40
4
03
5
...
35
Vetor
UFS - DComp - Prof. Kenia Kodel
14
23
1
-1
2
17
3
-1
4
03
5
...
35
Vetor
UFS - DComp - Prof. Kenia Kodel
15
23
1
09
2
17
3
40
4
03
5
...
35
Vetor
16
23
1
09
2
17
3
40
4
03
5
...
35
Vetor
18
19
for Cont:=1 to 35 do
Vetor3[Cont]:=Vetor1[Cont]+Vetor2[Cont];
01
30
1
12
2
10
14
02
05
12
05
06
4
03
5
35
24
2
15
3
20
4
20
ATIVIDADE
Escrever programa Pascal para ler 20 dados inteiros,
armazen-los num vetor e em seguida exibir os nmeros
pares mantidos no vetor.
02 05 12 05 06
1 2 3 4 5
UFS - DComp - Prof. Kenia Kodel
21
ATIVIDADE
Escrever programa Pascal para ler 20 dados inteiros,
armazen-los num vetor e em seguida exibir os mltiplos
de n mantidos no vetor. Sendo n dado pelo usurio.
03
35
1
24
3
15
4
20
5
22
ATIVIDADE
Escrever programa Pascal para ler 20 dados inteiros,
armazen-los num vetor e em seguida exibir a soma dos
nmeros mpares mantidos no vetor.
02 05 12 05 06
1 2 3 4 5
UFS - DComp - Prof. Kenia Kodel
23
ATIVIDADE
Escrever programa Pascal para ler 20 dados
inteiros, armazen-los num vetor e em seguida
exibir menu com a opes abaixo.
a) maior nmero mantido no vetor
b) soma dos nmeros mantidos no vetor
c) mdia dos nmeros mantidos no vetor
d) posio ocupada por N no vetor, sendo N
dado
Atender ao usurio conforme a opo
selecionada por ele.
24
ATIVIDADE
Na cidade TemQueFazerNo? as crianas costumam brincar
com um jogo onde: (1) um jogador A define uma sequencia
de 10 letras usando: G, R e B (exemplo: G G G R B
R B B B R); (2) um jogador B pode ler a sequencia
quantas vezes quiser; (3) o jogador B tambm pode dizer
uma das letras e obter em quais posies a letra dada se
encontra na sequencia; (4) o jogador B tambm pode dar
uma posio e saber qual letra ocupa a posio na
sequencia; (5) para finalizar, o jogador B deve dizer a
sequencia de letras, obtendo um ponto para cada acerto.
Escrever programa Pascal para automatizar o jogo.
UFS - DComp - Prof. Kenia Kodel
25
26
27
28
29
Exibir sequncia:
for Cont:=1 to 10 do
writeln(Sequencia[Cont]);
30
Finalizao do Jogo:
Pontos:=0;
for Cont:=1 to 10 do
begin
repeat
Letra:=upcase(readkey);
until Letra in [G,B,R];
if Letra = Sequencia[Cont] then
inc(Pontos);
end;
writeln(Pontos);
UFS - DComp - Prof. Kenia Kodel
31
1. program Atividade;
2. const
3.
Max = 50;
4. var
5. Notas: array [1..Max] of real;
6.
Media: real;
7.
I, Quant: byte;
8. begin
9. Media:=0;
10. for I:=1 to Max do
11.
begin
12.
readln(Notas[I]);
13.
Media:= Media + Notas[I];
14.
end;
15. Media:= Media / Max;
16. Quant:=0;
17. for I:=1 to Max do
18.
if Notas[I] > Media then
19.
inc(Quant);
Qual a funcionalidade
20. writeln(Quant);
21.end.
do cdigo dado?
ATIVIDADE
32
DEVER DE CASA
Construir programa para ler o gabarito de uma
prova objetiva com 20 questes, ler as respostas
dadas por 75 alunos da turma e armazenar (para
posterior exibio) as notas destes. Cada questo
vale 0,5 ponto.
UFS - DComp - Prof. Kenia Kodel
33
DEVER DE CASA
Construir programa para manter em vetor os subtotais do
consumo de cada mesa de uma lanchonete. Considerar que
as mesas so numeradas de 01 a 30. Disponibilizar menu
contendo: 1 abrir conta (incluir novo item em vetor); 2
fechar conta (excluir item do vetor); 3 novo consumo (para
registrar o novo consumo de uma dada mesa (nmero)
ajustar subtotal) ; 4 alto consumo (exibio em tela, das
mesas (nmero) com consumo superior a 50,00).
34
ATIVIDADE
Escrever programa para ler 20 nmeros inteiros quaisquer,
armazen-los (na mesma ordem de entrada) num vetor V e,
em seguida, orden-los (de forma crescente) mantendo-os
em V.
35
12 45 32 08 23 43 23 74 11 36
menor dado
08 45 32 12 23 43 23 74 11 36
menor dado
08
08
08
08
11
11
11
11
32
12
12
12
12
32
23
23
23 43
23 43
32 43
23 43
...
08 11 12 23 23 32
UFS - DComp - Prof. Kenia Kodel
23
23
23
32
74
74
74
74
45
45
45
45
36
36
36
36
36 43 45 74
36
program OrdenaVetor;
37
Complementar Estudos...
Fundamentos da Programao de Computadores
Ana Fernanda Gomes Ascencio
Edilene Aparecida Veneruchi de Campos
Captulo
Vetores
UFS - DComp - Prof. Kenia Kodel
38
Prximos passos...
Modularizao
UFS - DComp - Prof. Kenia Kodel
39