Buscar

UNIDADE II - MATRIZ

Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original

Conteúdo Programático
Unidade 1 – Tipos Estruturados Homogêneos Unidimensionais 
1.1 Características
1.2 Manipulação de Vetor 
Unidade 2 – Tipos Estruturados Homogêneos Multidimensionais 
2.1 Características
2.2 Manipulação de Matriz 
Unidade 3 – Estrutura de Dados na Construção de Tipos Estruturados 
3.1 Agregados heterogêneos (Registros)
3.2 Agregados homogêneos (Vetor de Registros)
3.3 Conjuntos e listas
Unidade 4 – Métodos de Pesquisa 
4.1 Pesquisa Sequencial
4.2 Pesquisa Binária
4.3 Pesquisa Interpolada 
Unidade 5 – Métodos de Ordenação 
5.1 Método Selection Sort
5.2 Método Insertion Sort
5.3 Método Bubble Sort
5.4 Método Quick-Sort
5.5 Método Merge-Sort
1
Unidade 2 (Matriz)
O que é uma Matriz?
É um conjunto de variáveis multidimensionais, de um mesmo tipo, que possuem o mesmo identificador (nome) e são alocadas sequencialmente na memória.
Também conhecida como variável homogênea multidimensional.
Como as variáveis tem o mesmo nome, o que as diferenciam são índices que referenciam sua localização dentro da estrutura.
Uma variável do tipo matriz precisa de um índice para cada uma de suas dimensões.
Tipos estruturados homogêneos multidimensionais
Tipos estruturados homogêneos multidimensionais
É uma estrutura de dados homogênea, pois é formada por uma única variável, com um único nome, dividida em vários pedaços, denominados de células ou elementos da matriz, onde podemos guardar valores de mesmo tipo e mesmo significado. 
Matrizes são estruturas de dados similares aos vetores, com a diferença que podem ter várias dimensões.
Exemplo de uma Matriz:
12
1
90
56
3
7
10
23
2
60
15
36
89
34
6
QUINA
1
2
3
4
5
Colunas
Linhas
 Legenda:
 QUINA: é o nome da matriz, contendo 3 linhas e 5 colunas, ou seja, NUMEROS(3x5)
 Vermelho: são os elementos da matriz. 
 Azul: são os índices, ou seja, a posição dos elementos na matriz (linha, coluna).
1
2
3
Numeros [1,1]
Numeros [3,4]
Tipos estruturados homogêneos multidimensionais
Tipos estruturados homogêneos multidimensionais
Matrizes em Pascal:
Na linguagem Pascal as matrizes também são conhecidas como ARRAYs.
Declaração da Matriz:
VAR Nome_Variavel: ARRAY [Inicio1..Fim1, Inicio2..Fim2, InicioN..FimN] OF Tipo_Dados
Onde:
Nome_Variavel: nome da variável do tipo matriz.
Inicio1..Fim1: são os limites inferior e superior das linhas da matriz.
Inicio2..Fim2: são os limites inferior e superior das colunas da matriz.
InicioN..FimN: são os limites inferior e superior das quantidades de matrizes.
Tipo_Dados: é o tipo básico dos dados que serão armazenados na matriz.
Tipos estruturados homogêneos multidimensionais
Tipos estruturados homogêneos multidimensionais
Vamos declarar essas matrizes com suas dimensões?
Arrays unidimensionais (D1):
	 identificador: array [i1..f1, i2..f2] of tipo;
exemplo:
		var Matriz: array [1..4, 1..4] of integer;
1
2
3
4
14
15
16
13
10
11
12
9
6
7
8
5
2
3
4
1
1
2
3
4
X:=Matriz[3,2];
{ X 10}
Indica a linha
Indica a coluna
Tipos estruturados homogêneos multidimensionais
9
Como atribuir valores a uma matriz?
Atribuir valor a uma matriz significa armazenar uma informação em um dos seus elementos, identificado de forma única por meio de seus índices.
Exemplo:
Tipos estruturados homogêneos multidimensionais
Arrays multidimensionais (Dn):
	 identificador: array [i1..f1, i2..f2, ..., in..fn] of tipo;
exemplo:
		var Matriz: array [1..4, 1..5, 1..3] of integer;
Indica a coluna
Tipos estruturados homogêneos multidimensionais
Indica a quantidade de matrizes
Indica a linha
11
program matrizes_BI;
Uses crt;
var
 mat: array[1..3, 1..2, 1..4] of Integer;
 i, j, m: integer;
begin
 //Preencher todas as 2a. colunas das 4 matrizes com o valor 10
 for i:= 1 to 3 do
 //for j:= 1 to 2 do
 for m:= 1 to 4 do
 mat[i,2,m] := 10;
 //Exibir o valores de todas as 2a. colunas das matrizes
 for i:= 1 to 3 do
 //for j:= 1 to 2 do
 for m:= 1 to 4 do
 writeln('Linha: ', i, ' Coluna: 2', ' Matriz: ',m,' = ', mat[i,2,m]);
 //pausa
 repeat until keypressed;
end.
Tipos estruturados homogêneos multidimensionais
Preenchendo e mostrando os elementos de uma Matriz com FOR:
Para preencher uma matriz, com a estrutura de repetição FOR, temos que percorrer todos os elementos da matriz, atribuindo-lhes valores digitados pelo usuário.
Para apresentar os valores de uma matriz, com a estrutura de repetição FOR, temos que percorrer todos os elementos da matriz, acessando e exibindo estes valores.
Tipos estruturados homogêneos multidimensionais
Exemplo:
Fazer um programa em Pascal que possui uma matriz 10x10, receber em cada posição uma nota. Fazer com que o programa leia cada nota e, após as leituras, calcular e informar a média de cada aluno.
Program Soma;
Uses crt;
Var Notas: array [1..10, 1..10] of Real;
 Media: array [1..10] of Real;
 i,j: integer;
 Sum: Real;
Begin
 clrscr;
 {Entrada de Dados}
 For i:= 1 to 10 do
 For j:= 1 to 10 do
 Begin
 Write('Notas[',I,'][',J,']='); Read (Notas[i][j]);
 End;
 {Processamento de Dados}
 For i:= 1 to 10 do
 Begin
 Sum:= 0; {zerar a soma das notas do aluno i}
 For j:= 1 to 10 do
 Begin
	 {acrecentar a soma as notas das disciplinas j}
	 Sum:= Sum + Notas[i][j];
	 End;
	Media[i]:= Sum/10; {calcula a média do aluno i}
 End;
 {Saida de Resultados}
 For i:= 1 to 10 do Begin
 Writeln('A nota media aluno ',i,' : ',Media[i]:2:2);
 End;
 {Pausa}
 repeat until keypressed;
End.
Tipos estruturados homogêneos multidimensionais
A multiplicação de duas matrizes é bem definida apenas se o número de colunas da matriz da esquerda é o mesmo número de linhas da matriz da direita.
Exercício:
Implemente em Pascal um programa para calcular o produto das duas matrizes abaixo e, exiba o resultado em outra matriz.

Teste o Premium para desbloquear

Aproveite todos os benefícios por 3 dias sem pagar! 😉
Já tem cadastro?

Outros materiais