Estrutura de Dados - Vetores
1 - O que é um vetor
O vetor (ou array) é uma variável composta homogênea de uma dimensão, ou seja, é um agrupamento de variáveis do mesmo tipo que compartilham um único nome e são armazenadas de forma sequencial na memória. Cada elemento dentro desse conjunto é identificado por um índice, que indica sua posição específica na estrutura.
→ Características de um vetor
- É considerada uma estrutura de dados simples;
- Cada valor ocupa uma posição específica dentro do vetor, chamada de índice ou posição.
- É como uma gaveta com várias divisórias numeradas, onde cada divisória guarda um valor.
→ Por que vetor é uma estrutura de dados?
- Porque organiza e armazena um conjunto de informações relacionadas de forma ordenada.
- Permite acesso direto a qualquer elemento, usando o índice.
- Serve de base para outras estruturas mais complexas (como matrizes, listas, filas, pilhas).
→ Diferença entre variável simples e vetor
Variável Simples | Vetor |
---|---|
Armazena apenas um valor por vez | Armazena vários valores do mesmo tipo |
Exemplo: idade: inteiro | Exemplo: idades: vetor[1..5] de inteiro |
Não precisa de índice | Precisa de índice para acessar cada posição |
Acessibilidade Visual
A tabela apresenta duas colunas, sendo uma com informações referente a variável simples, e a outro com o Vetor. Esta serve para fazer um comparativo, como por exemplo: A variável simples armazena apenas um valor por vez, enquanto o vetor armazena vários valores do mesmo tipo. Exemplo: variável simples: idade: inteiro - vetor: idades: vetor[1..5] de inteiro, significa que a variável vetor do tipo inteiro terá cinco posições. Na variável simples não há presença de um índice, mas o vetor preciso de índice para acessar a posição deste para saber seu valor.
Exemplo prático:
var
idade: inteiro // variável simples
idades: vetor[1..5] de inteiro // vetor
3 - Declaração de um vetor
➜ Sintaxe em Portugol / VisualG
Para declarar um vetor, é necessário:
- Dar um nome ao vetor.
- Definir o intervalo de posições (índice inicial e final).
- Informar o tipo de dados que o vetor vai armazenar.
Exemplo de declaração:
var
notas: vetor[1..10] de real
nomes: vetor[1..5] de caractere
Neste exemplo:
- notas é um vetor de 10 posições, que guarda números reais.
- nomes é um vetor de 5 posições, que guarda textos.
4 - Acesso aos elementos
→ Índice e posições
- Cada valor do vetor é identificado por um índice.
- O índice indica qual posição está sendo acessada ou alterada.
- No VisualG, o índice normalmente começa em 1, mas depende da declaração.
Exemplo
notas[1] := 8.5
notas[2] := 7.0
Contexto:
notas[1]
refere-se à primeira posição do vetornotas
.
notas[2]
refere-se à segunda posição.
Observação:
Para o VisualG não existe posição zero, diferente das linguagens como C ou Python.
5 - Exemplos leitura e escrita em Vetores
Para preencher ou exibir os valores de um vetor, é muito comum utilizarmos um laço de repetição, sendo necessário o índice para seu controle.
Exemplo — Ler valores 5 números inteiros e armazenar em um vetor
Algoritmo "vetor"
// Disciplina : [Lógica de Programação]
// Professor : Mauro Borges França
// Descrição : Algoritmo para apresentar os conceitos de vetor
// Data atual : 01/07/2025
Var
// Seção de Declarações das variáveis
numeros: vetor[1..5] de inteiro
i: inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
para i de 1 ate 5 faca
escreva("Digite o ", i, "º número: ")
leia(numeros[i])
fimpara
Fimalgoritmo
Observação: O para
faz com que o mesmo comando (leia
) se repita para cada índice. O i
funciona como o índice contador.
Área de visualização (tela)
Digite o 1º número: 5
Digite o 2º número: 8
Digite o 3º número: 9
Digite o 4º número: 10
Digite o 5º número: 11
Memória
numero[1] = 5
numero[2] = 8
numero[3] = 9
numero[4] = 10
numero[5] = 11
Exemplo - Ler 5 números inteiros e apresentá-los na ordem de leitura e na ordem inversa
Algoritmo "vetor"
// Disciplina : [Lógica de Programação]
// Professor : Mauro Borges França
// Descrição : Algoritmo para apresentar os conceitos de vetor
// Data atual : 01/07/2025
Var
// Seção de Declarações das variáveis
numeros: vetor[1..5] de inteiro
i: inteiro
Inicio
// Seção de Comandos, procedimento, funções, operadores, etc...
Para i de 1 ate 5 faca
escreva("Digite o ", i, "º número: ")
leia(numeros[i])
Fimpara
// Apresentar em ordem de entrada
escreval("====ORDEM NORMAL=======")
Para i de 1 ate 5 faca
escreval("Número na posição ", i, ": ", numeros[i])
Fimpara
escreval("====ORDEM INVERTIDA=======")
// Apresentar em ordem invertida
Para i de 5 ate 1 passo -1 faca
escreval("Número na posição ", i, ": ", numeros[i])
Fimpara
Fimalgoritmo
Copyleft 🄯 2025 - Professor Mauro Borges França.