Escolar Documentos
Profissional Documentos
Cultura Documentos
Programação de Computadores I
Estrutura de Dados (Vetores)
Departamento de Matemática
Bloco VI - sala 23
http://www.feg.unesp.br/˜chaves
chaves@feg.unesp.br
1 / 26
Estrutura de Dados (Vetores)
Introdução
Introdução
I Exercício:
Ex.:
casa – asac
lata – atal
sapo – opas
2 / 26
Estrutura de Dados (Vetores)
Introdução
Introdução
I Solução:
int main( )
{
char L1, L2, L3, L4;
printf (“Entre com palavras de 4 letras: ”);
scanf (“%c %c %c %c”, &L1, &L2, &L3, &L4);
printf (“%c %c %c %c”, L4, L3, L2, L1);
return 0;
}
3 / 26
Estrutura de Dados (Vetores)
Introdução
Introdução
Problema!!!
4 / 26
Estrutura de Dados (Vetores)
Introdução
Introdução
Problema!!!
4 / 26
Estrutura de Dados (Vetores)
Vetores
Definição
5 / 26
Estrutura de Dados (Vetores)
Vetores
Definição
5 / 26
Estrutura de Dados (Vetores)
Vetores
Definição
na qual:
I tipo_da_variavel: é o tipo das variáveis que devem ser
criadas. Ex.: int, char, float, entre outros;
I nome_da_variavel: é o nome que será utilizado para
referenciar o conjunto de variáveis;
I tamanho: é o número de variáveis que será criado
(tamanho do vetor).
6 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Declaração
I int notas[10];
7 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Declaração
I int notas[10];
0 1 2 3 4 5 6 7 8 9
9 10 10 8 7 4 5 8 10 9
7 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Declaração
I int notas[10];
0 1 2 3 4 5 6 7 8 9
0 9 110 210 38 74 45 56 8 7 10 8 9 9
9 10 10 8 7 4 5 8 10 9
I char letras[20];
0 1 2 3 4 5 6 ... 19
U N E S P /0 /0 /0
7 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Declaração
I int notas[10];
0 1 2 3 4 5 6 7 8 9
0 9 110 210 38 74 45 56 8 7 10 8 9 9
0 1 2 3 4 5 6 7 8 9
9 10 10 8 7 4 5 8 10 9
9 10 10 8 7 4 5 8 10 9
I char letras[20];
0 1 2 3 4 5 6 ... 19
0U 1N 2E 3S 4P 5
/0 /06 ... /019
U N E S P /0 /0 /0
I float pesos[40];
0 1 2 3 4 5 6 ... 39
59.50 72.25 64.70 88.30 71.25 45.45 98.60 67.90
0 1 2 3 4 5 6 ... 99
19.90 25.00 12.10 11.99 1.25 0.99 10.00 12.50
7 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Declaração
I int notas[10];
0 1 2 3 4 5 6 7 8 9
0 9 110 210 38 74 45 56 8 7 10 8 9 9
0 1 2 3 4 5 6 7 8 9
9 10 10 8 7 4 5 8 10 9
90 1
10 2
10 3
8 74 45 56 87 8
10 99
I char letras[20];9 10 10 8 7 4 5 8 10 9
0 1 2 3 4 5 6 ... 19
0U 1N 2E 3S 4P 5
/0 /06 ... /019
0
U 1
N 2
E S3 P4 5
/0 6
/0 ... 19
/0
U N E S P /0 /0 /0
I float pesos[40];
0 1 2 3 4 5 6 ... 39
0
59.50 1
72.25 2
64.70 3
88.30 4
71.25 5
45.45 6
98.60 ... 39
67.90
59.50 72.25 64.70 88.30 71.25 45.45 98.60 67.90
I double preco[100];
0 1 2 3 4 5 6 ... 99
0
19.90 1
25.00 2
12.10 3
11.99 4
1.25 5
0.99 6
10.00 ... 99
12.50
19.90 25.00 12.10 11.99 1.25 0.99 10.00 12.50
7 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Inicialização
8 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Inicialização
8 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Inicialização
8 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Inicialização
8 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Inicialização
8 / 26
Estrutura de Dados (Vetores)
Vetores
Exemplos - Inicialização
8 / 26
Estrutura de Dados (Vetores)
Vetores
Alocação de memória
9 / 26
Estrutura de Dados (Vetores)
Vetores
10 / 26
Estrutura de Dados (Vetores)
Vetores
10 / 26
Estrutura de Dados (Vetores)
Vetores
Por quê?
11 / 26
Estrutura de Dados (Vetores)
Vetores
IMPORTANTE!!!
12 / 26
Estrutura de Dados (Vetores)
Vetores
IMPORTANTE!!!
13 / 26
Estrutura de Dados (Vetores)
Vetores
Definindo constantes
ou
I const int tam = 50;
14 / 26
Estrutura de Dados (Vetores)
Exercícios Resolvidos
Exercício 1
15 / 26
Estrutura de Dados (Vetores)
scanf (“%c %c %c %c”, &L1, &L2, &L3, &L4);
Exercícios Resolvidos printf (“%c %c %c %c”, L4, L3, L2, L1);
return 0;
}
Solução
#define TAM 10
int main( )
{
char letras[TAM];
int i;
printf (“Entre com a frase: ”);
for (i = 0; i < TAM; i++)
scanf (“%c”, &letras[i]);
for (i = TAM – 1; i >= 0; i-- )
printf(“%c”, letras[i]);
return 0;
}
16 / 26
Estrutura de Dados (Vetores)
Exercícios Resolvidos
Exercício 2
17 / 26
Estrutura de Dados (Vetores)
Exercícios Resolvidos
Solução
#define TAM 100
int main( )
{
float notas[TAM];
int mat[TAM], aux, indice = 0, total;
printf(“Entre com a Matricula (ou negativo para sair): ”);
scanf(“%d”, &aux);
while (aux > 0)
{
mat[indice] = aux;
printf (“Entre com a nota: ”);
scanf (“%f ”, ¬as[indice]);
printf (“Entre com a Matricula (ou negativo para sair): ”);
scanf (“%d”, &aux);
indice++;
}
return 0;
}
18 / 26
Estrutura de Dados (Vetores)
Exercícios Resolvidos
Exercício 3
19 / 26
indice++;
Estrutura de Dados (Vetores)
}
Exercícios Resolvidos
return 0;
}
Solução
total = indice;
printf (“Entre com a Matricula (ou negativo para sair): ”);
scanf (“%d”, &aux);
while ( aux > 0)
{
for (indice = 0; indice < total; indice++ )
if ( mat[indice] == aux)
break;
if ( indice < total)
printf (“A nota eh: %.2f \n”, notas[indice]);
else
printf (“Matricula nao encontrada\n”);
printf (“Entre com a Matricula (ou negativo para sair): ”);
scanf (“%d”, &aux);
}
20 / 26
Estrutura de Dados (Vetores)
Exercícios
Exercício 1
21 / 26
Estrutura de Dados (Vetores)
Exercícios
Exercício 2
22 / 26
Estrutura de Dados (Vetores)
Exercícios
Exercício 3
23 / 26
Estrutura de Dados (Vetores)
Exercícios
Exercício 4
I Faça um programa que dado o vetor [2; 4; 35; 50; 23; 17;
9; 12; 27; 5] retorne:
a) maior valor
b) média dos valores
c) os valores dispostos em ordem crescente
24 / 26
Estrutura de Dados (Vetores)
Exercícios
Exercício 5
25 / 26
Estrutura de Dados (Vetores)
Referências Bibliográficas
Referências Bibliográficas
26 / 26