estrutura de dados - arieldias.comarieldias.com/material/2019-2/ed/aula1.pdf · vetor Índice...
TRANSCRIPT
Estrutura de DadosVetores
Vetor
▪ Vetor ou Array é uma estrutura de dados que consiste de valores do mesmo tipo, todos relacionados
▪ São estruturas de tamanho fixo, ou seja, permanecem com o mesmo tamanho depois de criados
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Em uma aplicação podemos declarar diferentes variáveis
▪ Entretanto muitas vezes não se sabe ao certo a quantidade de variáveis necessárias
▪ Exemplo: ao solicitar várias notas de um aluno para que se calcule a média
▪ Neste caso, é recomendado que se crie um vetor chamado notas e nele vamosagrupar todas as notas do aluno
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
nome do vetor
índice do elementono vetor
elementono vetor
Vetor
▪ Índice
▪ Número da posição do elemento dentro de um vetor
▪ O índice começa em 0 (zero) e vai até n, sendo n um valor unicamente inteiro
▪ Nome do vetor
▪ Possui um par de colchetes para representar que não é uma variável simples, mas sim, uma estrutura de dados do tipo vetor
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
nome do vetor
índice do elementono vetor
elementono vetor
Vetor
▪ Elemento no vetor
▪ Vamos indicar o nome do vetor e, dentro dos colchetes colocaremos o índice
▪ Em seguida, atribuiremos o valor ao vetor naquela dita posição
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
nome do vetor
índice do elementono vetor
elementono vetor
Vetor
▪ Atribuindo valor à uma dada posição dentro do vetor
notas[5] = 8 //coloca o valor 8 na posição 5 do vetor
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Atribuindo valor à uma dada posição dentro do vetor
notas[5] = 8 //coloca o valor 8 na posição 5 do vetor
notas[3] = 47 //coloca o valor 47 na posição 3 do vetor
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Atribuindo valor à uma dada posição dentro do vetor
notas[5] = 8 //coloca o valor 8 na posição 5 do vetor
notas[3] = 47 //coloca o valor 47 na posição 3 do vetor
notas[8] = 64 //coloca o valor 64 na posição 8 do vetor
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Atribuindo valor à uma dada posição dentro do vetor
notas[5] = 8 //coloca o valor 8 na posição 5 do vetor
notas[3] = 47 //coloca o valor 47 na posição 3 do vetor
notas[8] = 64 //coloca o valor 64 na posição 8 do vetor
notas[0] = 12 //coloca o valor 0 na posição 12 do vetor
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Note que a ordem de inserção dos valores no vetor não importa
▪ Primeiro colocamos um valor na posição 5, depois na posição 3, depois na posição 8 e, por fim, na posição 0
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Vetores são objetos que estão alocados na memória
▪ São criados dinamicamente utilizando a palavra new, da seguinte forma:
int notas[] = new int[10]
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
tipo do vetor(pode ser int, float,
double, String)
nome do vetor(segue a mesma regra para
criação de nome de variáveis, eé seguido por um par de colchetes)
palavra reservada new
tipo e tamanho do vetor(colocaremos sempre o tipo do vetor e
dentro dos colchetes o tamanho máximodo nosso vetor)
Inicializando um vetor
▪ Podemos inicializar o vetor de duas formas
▪ int vetor[] = new int[10]
▪ int vetor[] = {12, 14, 6, 8, 9, 4, 22, 23, 9, 11}
▪ Neste último caso não precisamos utilizar a palavra reservada new
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Vamos inserir os valores de 1 a 10 dentro do vetor notas:
int notas[] = new int[10]; //declaramos o vetor de 10 posiçõesnotas[0]=1; //inserimos um valor em cada uma das posições do vetornotas[1]=2;notas[2]=3;notas[3]=4;notas[4]=5;notas[5]=6;notas[6]=7;notas[7]=8;notas[8]=9;notas[9]=10;
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Este exemplo constou de 10 elementos e fizemos manualmente cada inserção
▪ E se este vetor fosse de 1 milhão de itens? Faríamos a atribuição de 1 a 1 também de 0 a 999999 mil???
int notas[] = new int[10];notas[0]=1;notas[1]=2;notas[2]=3;...notas[999998]=999999;notas[999999]=1000000;
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Este exemplo constou de 10 elementos e fizemos manualmente cada inserção
▪ E se este vetor fosse de 1 milhão de itens? Faríamos a atribuição de 1 a 1 também de 0 a 999999 mil???
int notas[] = new int[10];notas[0]=1;notas[1]=2;notas[2]=3;...notas[999998]=999999;notas[999999]=1000000;
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Seria muito trabalhoso!!!
Vetor
▪ Note que os índices do vetor crescem sequencialmente de 1 em 1 (iniciando em zero) até chegar no tamanho máximo do vetor
▪ Neste caso, podemos utilizar uma estrutura de repetição, veja no próximo slide
int notas[] = new int[10]; notas[0]=1;notas[1]=2;notas[2]=3;notas[3]=4;...
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0
0 0 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1
1 1 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2
2 2 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3
3 3 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4
4 4 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5
5 5 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6
6 6 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7
7 7 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7 8
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7 8
8 8 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7 8 9
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7 8 9
9 9 + 1
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7 8 9 10
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7 8 9 10
Agora a variável i vale 10. Este valor é menor que o tamanho do vetor? NÃO! Neste caso, finaliza a
inserção dos valores no vetor.
Vetor
int notas[] = new int[10];
//length retorna o tamanho do vetor
for(int i=0; i<notas.length(); i++)
{
notas[i] = i+1;
}
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
TESTE DE MESA
Variável i ➔ 0 1 2 3 4 5 6 7 8 9 10
Agora a variável i vale 10. Este valor é menor que o tamanho do vetor? NÃO! Neste caso, finaliza a
inserção dos valores no vetor.
Vetor
▪ Considerações importantes:
▪ O tamanho de um vetor é fixo
▪ Para percorrer um vetor utilize sempre o for
▪ Percorrendo com o for, é necessário saber o tamanho do vetor
▪ Utilize nome_do_vetor.lenght
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Voltemos ao nosso vetor nota, vamos realizar a soma de todos os valores presentes no vetor
▪ Lembre-se: SEMPRE que for percorrer um vetor utilize uma estrutura derepetição, por exemplo o for.
▪ A condição de parada do for é o tamanho do vetor
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Vetor
▪ Somando todos os valores do vetor notas e mostrando na tela o resultado
▪ A cada iteração do for, a variável soma (linha 25) recebe o valor anterior da variável soma MAIS o valor do vetor nota na posição i
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda
Atividade
▪ Veja a lista de atividades comentadas no site
Professor Ariel da Silva Dias - www.arieldias.com - Obra Gratuita, proibida reprodução e venda