2. Matrizes de uma dimensão ou
vetores
Este tipo de estrutura em particular é também
denominado por alguns profissionais de como
matrizes unidimensionais. Sua utilização mais
comum está vinculada à criação de tabelas.
3. Matrizes de uma dimensão ou
vetores
Caracteriza-se por ser definida uma única
variável dimensionada com um determinado
tamanho. A dimensão de uma matriz é
constituída por constantes inteiras e positivas.
Os nomes dados às matrizes seguem as mesmas
regras de nomes utilizados para indicar as
variáveis simples.
4. Matrizes de uma dimensão ou
vetores
Para ter uma idéia de como utilizar matrizes em
uma determinada situação, considere o seguinte
problema: “Calcular e apresentar a média geral
de uma turma de 8 alunos. A média a ser obtida
deve ser a média geral das médias de cada aluno
obtida durante o ano letivo”.
5. Matrizes de uma dimensão ou
vetores
Desta forma será necessário somar
todas as médias e dividi-las por 8. A
tabela seguinte apresenta o número de
alunos, suas notas bimestrais e
respectivas médias anuais. É da média
de cada aluno que será efetuado o
cálculo da média da turma.
6. Matrizes de uma dimensão ou
vetores
Agora basta escrever um programa para
efetuar o cálculo das 8 médias de cada
aluno. Para representar a média do
primeiro aluno será utilizada a variável
MD1, para o segundo MD2 e assim por
diante. Então tem-se:
7. Matrizes de uma dimensão ou
vetoresMD1 = 4,5
MD2 = 6,5
MD3 = 8,0
MD4 = 3,5
MD5 = 6,0
MD6 = 7,0
MD7 = 6,5
MD8 = 6,0
8. Matrizes de uma dimensão ou
vetores
Com o conhecimento adquirido até este
momento, seria então elaborado um programa
que efetuaria a leitura de cada nota, a soma
delas e a divisão do valor da soma por 8,
obtendo-se desta forma a média, conforme
exemplo abaixo em português estruturado:
9. Matrizes de uma dimensão ou
vetoresPrograma Leitura
var
MD1, MD2, MD3, MD4, MD5, MD6, MD7, MD8 : real
Media : real
Inicio
Escreva “Digite um numero real”
Leia MD1
Escreva “Digite um numero real”
Leia MD2
Escreva “Digite um numero real”
Leia MD3
10. Matrizes de uma dimensão ou
vetores
Escreva “Digite um numero real”
Leia MD4
Escreva “Digite um numero real”
Leia MD5
Escreva “Digite um numero real”
Leia MD6
Escreva “Digite um numero real”
Leia MD7
11. Matrizes de uma dimensão ou
vetores
Escreva “Digite um numero real”
Leia MD8
Media (MD1 + MD2 + MD3 +MD4 + MD5 + MD6 +MD7 +MD8) / 8
Escreva “Média dos números: ”, Media
Fim
12. Variáveis compostas
homogêneas
Assim como na teoria dos Conjuntos, uma
variável pode ser interpretada como um
elemento e uma Estrutura de Dados, como um
conjunto. Quando uma determinada Estrutura
de Dados é composta de variáveis com o mesmo
tipo primitivo, temos um conjunto homogêneo
de dados.
13. Variáveis compostas
unidimensionais
Para entender variáveis compostas
unidimensionais, imaginemos um edifício com
um número finito de andares, representando
uma estrutura de dados, e seus andares,
partições dessa estrutura. Visto que os andares
são uma segmentação direta do prédio, estes
compõem então o que chamaremos de
estrutura composta unidimensional (uma
dimensão).
14. Variáveis compostas
unidimensionais - exemplo
Um vetor de 40 posições reais poderia ter a
seguinte definição e declaração:
//definição do tipo vetor
tipo VCLASSE = vetor[1..40] de reais;
//declaração da variável vetor
CLASSE : VCLASSE
15. Variáveis compostas
unidimensionais - exemplo
A figura abaixo ilustra como o vetor VCLASSE, do
tipo construído CLASSE, poderia ser
representado. Observamos que a primeira
posição do vetor é 1, que é o limite inicial (LI), e
que a última posição é 40, que é o limite final
(LF);
16. Variáveis compostas
unidimensionais - exemplo
A figura seguinte ilustra como o vetor VCLASSE,
do tipo construído CLASSE, poderia ser
representado. Observamos que a primeira
posição do vetor é 1, que é o limite inicial (LI), e
que a última posição é 40, que é o limite final
(LF);
18. Variáveis compostas
unidimensionais - exemplo
Devemos ressaltar que LI e LF devem ser
obrigatoriamente constantes inteiras e LI < LF. O
número de elementos do vetor será dado por LF
– LI + 1. Isto significa que as posições do vetor
são identificadas a partir de LI, com incrementos
unitários, até LF, conforme representado na
figura a seguir:
21. Variáveis compostas
unidimensionais
O nome do vetor é determinado por meio do
identificador utilizado na declaração de
variáveis, e a posição, por meio da constante, da
expressão aritmética ou da variável que estiver
dentro dos colchetes, também denominada
índice;
22. Variáveis compostas
unidimensionais
É importante não confundir o índice com o
elemento. O índice é a posição do vetor,
enquanto o elemento é o que está contido
naquela posição (valor)
Após isolar um único elemento do vetor,
poderemos manipulá-lo através de qualquer
operação de entrada, saída ou atribuição:
24. Exemplo 1
programa acima_media
var
tipo vet = Vetor[1..10] de inteiros
vetor_notas : vet
soma, media : real
NotaAcima, i : inteiro
Faça um programa que leia 10 notas do tipo inteiro, e mostre
quantas notas estão acima da média:
25. Exemplo 1
inicio
soma 0
NotaAcima 0
//laço para leitura das notas e armazenamento no vetor
vetor_notas
para i de 1 até 10 passo 1 faça
escreva “Digite a nota”, i
leia vetor_notas[i]
fim_para
27. Exemplo 1
//laço para verificar valores que estão acima da média
para i de 1 até 10 passo 1 faça
se (vetor_nota[i] > media) então
NotaAcima NotaAcima + 1
fim_se
fim_para
escreva “Quantidade de notas acima da média”, NotaAcima
fim
28. Exemplo 2
programa soma_dois_vetores
var
tipo vet = vetor[1..50] de inteiros
vetA, vetB, vetR : vet
i : inteiro
inicio
Elabore um algoritmo que leia, some e imprima o resultado da
soma entre dois vetores inteiros de 50 posições
29. Exemplo 2
//leitura do vetor A
para i de 1 até 50 passo 1 faça
escreva “Digite o valor”, i, “para o vetorA”
leia vetA[i]
fim_para
30. Exemplo 2
//leitura do vetor B
para i de 1 até 50 passo 1 faça
escreva “Digite o valor”, i, “para o vetorB”
leia vetB[i]
fim_para
31. Exemplo 2
//armazenando a soma dos vetores A e B em vetR
para i de 1 até 50 passo 1 faça
vetR[i] vetA[i] + vetB[i]
fim_para
fim
32. Exemplo 3
programa zero_um
var
tipo vet = vetor[1..100] de inteiros
A : vet
i : inteiro
resto : inteiro
Construa um algoritmo que preencha um vetor de 100
elementos inteiros, colocando 1 na posição correspondente a
um número par e 0 a um número impar
33. Exemplo 3
inicio
para i de 1 até 100 passo 1 faça
resto i mod 2
se (resto < > 0) então
A[i] 1
senão
A[i] 0
fim_se
fim_para
fim