A definição de vetor
Também chamado de variável composta homogênea unidimensional. O que significa que se trata de um conjunto de variáveis dos mesmo tipo, possuem o mesmo nome e são alocadas sequencialmente na memória. Mas se as variáveis possuem o mesmo nome o que diferencia uma das outras? Usamos um índice para isso.
Declaração de um vetor
nome: array [<tamanho>] de <tipo>
Em nome é o nome do vetor, tamanho é a quantidade de variáveis que irão compor o vetor e tipo é o tipo de dado que será armazenado no vetor.
x: array [1..5] de inteiro
O vetor acima possui 5 espaços que podem armazenar valores inteiros. Observe abaixo uma representação de como os dados são armazenados.
x[1] | x[2] | x[3] | x[4] | x[5] |
Atribuindo valores ao vetor
Para atribuir um valor a um vetor precisamos informar em qual posição o valor ficará armazenado. Por exemplo:
x[1] <- 45
O 45 será armazenado na posição de índice 1.
x[3] <- 56
O 56 será armazenado na posição de índice 3.
Como preencher um vetor
Preencher um vetor é atribuir valores a todas as suas posições. Assim, deve-se implementar um mecanismo que controle o valor do índice. Para isso podemos usar a estrutura de repetição para
para i de 1 ate 5 faça
inicio
escreva ("Digite o ", i, "º número")
leia(x[i])
fim
Assim, garantimos que a variável i assuma todos os valores possíveis para o índice do vetor.
Escrever os elementos de um vetor
Para escrever os elementos de um vetor também utilizamos a estrutura de repetição para.
para i de 1 ate 5 faça
inicio
escreva ("Este é o ", i, "º número do vetor")
escreva(x[i])
fim
Assim, garantimos que a variável i assuma todos os valores possíveis para o índice do vetor. Dessa forma todos os valores serão mostrados.
Exercícios
1º) Faça um programa que preencha um vetor com nove números inteiros, calcule e mostre os números primos e suas respectivas posições.
Algoritmo
var
num: array [1..9] de inteiro
i, j, cont: inteiro
início
para i de 1 ate 9 faça
início
leia(num[i])
fim
para i de 1 até 9 faça
início
cont <- 0
para j de 1 até num[i] faça
início
se (num[i] mod j = 0) então
início
cont <- cont + 1
fim
fim
se (cont <= 2) então
início
escreva(num[i])
escreva(i)
fim
fim
fim.
Was this helpful?
0 / 0