Académique Documents
Professionnel Documents
Culture Documents
Vetores e Matrizes
Temos os seguintes tipos de dados básicos:
inteiros,
reais,
lógicos e
literais.
V1 V2 V3
Vetores
Exemplo: M(3,3) é uma matriz de duas dimensões, respectivamente 3 Vetores são matrizes que possuem somente uma dimensão.
linhas e 3 colunas.
1
17/09/2009
Exemplo
Algoritmo Média
Ler um vetor N com 80 elementos, onde cada elemento N(80): Mat inteiro
representa a nota de um aluno. Calcular a média das notas e soma,media: real
escrever a média e o número de notas acima da média. cont,ind: inteiro
Início
soma:=0
para i=1 até 80
Início
ler( N(i))
soma:=soma+N(i)
fim_para
media:= soma/80
cont:=0
para i=1 até 80
se N(i)>=media então cont:=cont+1
fim_para
escrever("Média: ",media)
escrever("Acima: ",cont)
Fim
Ordenação de Vetores
Existem vários algoritmos para ordenar uma lista de Método1:
elementos. Consiste em percorrer o vetor, comparando-se cada elemento do vetor
com o elemento imediatamente seguinte (V(i) com V(i+1)).
2
17/09/2009
15 7 1 4 17 10
7 1 4 15 17 10
7 1 4 15 10 17
7 1 4 15 10 17
Isso indica que devemos repetir o processo mais vezes até que o vetor
esteja ordenado. 1 4 7 15 10 17
1 4 7 10 15 17
1 4 7 10 15 17
O número máximo de execuções do trecho do algoritmo para que É sempre necessário repetir o passo N-1 vezes?
o vetor fique ordenado é N-1 vezes, onde N é o número de No exemplo apresentado em apenas duas execuções do algoritmo o
elementos do vetor.
vetor já estava ordenado!
Para n=1 até 5
Início
Para i=1 até 5 Como controlar o número de vezes?
se V(i) > V(i+1) então Se o vetor já estiver ordenado, não precisa repetir o passo mais uma
Início vez. Como saber?
x:=V(i) Se não houve trocas entre os elementos do vetor ao executar o
V(i):=V(i+1) trecho do algoritmo, então está ordenado.
V(i+1):=x
Fim
Fim_para Algoritmo Método da Bolha.
Fim_para
3
17/09/2009
fim:=falso Método2:
enquanto fim=falso
Outro processo de ordenação consiste em achar o maior elemento do
Início
conjunto e trocá-lo com a última posição.
fim:=verdadeiro
para i:=1 até 5
Em seguida, achar o maior elemento do conjunto restante e troca-se
se V(i)>V(i+1) então
com a penúltima posição.
Início
x:=V(i)
V(i):=V(i+1) Procede-se da mesma maneira até que o conjunto restante contenha
V(i+1):=x apenas um elemento.
fim:=falso
Fim
Fim_para
Fim_enquanto
15 7 1 4 17 10
15 7 1 4 10 17 ultimo:=6
enquanto ultimo>1
Início
maior:=V(1)
10 7 1 4 15 17 posmaior:=1
para i:=2 até 6
se maior<V(i) então
4 7 1 10 15 17 Início
maior:=V(i)
posmaior:=i
Fim
4 1 7 10 15 17 Fim_para
aux:=V(ultimo)
V(ultimo):=V(posmaior)
V(posmaior):=aux
1 4 7 10 15 17
ultimo:=ultimo-1
Fim_enquanto
Exercícios:
1. Escreva um algoritmo que leia dois vetores de 10 posições 2. Escreva um algoritmo que leia e mostre um vetor de 20
e faça a multiplicação dos elementos de mesmo índice, elementos inteiros. A seguir, conte quantos valores pares
colocando o resultado em um terceiro vetor. Mostre o vetor existem no vetor.
resultante.
3. Escreva um algoritmo que leia um vetor de 80 elementos
inteiros. Depois, encontre e mostre o menor elemento e sua
posição no vetor.
4
17/09/2009