Buscar

Aula15-Pascal

Prévia do material em texto

Disciplina: Fundamentos de ProgramaçãoDisciplina: Fundamentos de ProgramaçãoDisciplina: Fundamentos de ProgramaçãoDisciplina: Fundamentos de Programação
Curso: Engenharia MecânicaCurso: Engenharia MecânicaCurso: Engenharia MecânicaCurso: Engenharia Mecânica
Prof. Renato Prof. Renato Prof. Renato Prof. Renato BalancieriBalancieriBalancieriBalancieri
Aula Aula Aula Aula 15151515
� Matriz é uma variável composta homogênea variável composta homogênea variável composta homogênea variável composta homogênea 
multidimensional;multidimensional;multidimensional;multidimensional;
� Em Pascal é conhecida como ARRAY;ARRAY;ARRAY;ARRAY;
� Uma estrutura do tipo ARRAY é uma sequência 
de variáveis de mesmo tipovariáveis de mesmo tipovariáveis de mesmo tipovariáveis de mesmo tipo, que possuem o 
mesmo identificadormesmo identificadormesmo identificadormesmo identificador (mesmo nome) e são 
alocadas sequencialmente na memória;
� Como as variáveis têm o mesmo nome, o que as 
distingue são índicesíndicesíndicesíndices que referenciam sua 
localização dentro da estrutura;
� Uma variável do tipo matriz precisa de um índice um índice um índice um índice 
para cada uma de suas para cada uma de suas para cada uma de suas para cada uma de suas dimensões.dimensões.dimensões.dimensões.
VAR nome: ARRAY [início1..fim1, início2..fim2, 
inícioN..fimN] OF tipo_dos_dados;
� Onde: 
◦ nome nome nome nome é o nome da variável do tipo matriz
◦ início1início1início1início1 é o índice inicial da primeira dimensão da matriz; 
fim1 fim1 fim1 fim1 é o índice final da primeira dimensão da matriz; 
◦ inícioN inícioN inícioN inícioN é o índice inicial da n-ésima dimensão da matriz; 
◦ fimNfimNfimNfimN é o final da n-ésima dimensão da matriz;
◦ tipo_dos_dadostipo_dos_dadostipo_dos_dadostipo_dos_dados é o tipo básico de dados que serão 
armazenados na matriz.
VAR X:ARRAY[1..3,1..5] OF INTEGER;
X[1,1] X[3,4]
1 2 3 4 5
1
X 2
3
� Cada elemento de uma matriz pode 
armazenar um valor;
� Para fazer este armazenamento, é necessário 
executar uma atribuição, informando o 
número das dimensões.
X[2,4] = 45
X[3,1] = 13
X[3,5,3] = -4
� Para preencher uma matriz, é necessário identificar 
todas as suas posições, isto exige a utilização de um 
índice para cada dimensão da matriz;
� No exemplo a seguir, uma matriz bidimensional com 
três linhas e cinco colunas é mostrada. Observe que a 
variável iiii varia dentro do intervalo de 1 a 3, ou seja, 
exatamente nas linhas. Para cada valor de iiii, a variável jjjj
varia de 1 a 5, ou seja, as cinco colunas que cada linha 
possui;
FOR i:=1 TO 3 DO
BEGIN
FOR j:=1 TO 5 DO
BEGIN
WRITELN(‘Digite o número da linha’, i, ‘ e a coluna: ’, j);
READLN(X[i,j]);
END;
END;
Memória
i j
1 1 Digite o número da linha 1 e coluna 1: 12
2 Digite o número da linha 1 e coluna 2: 9
3 Digite o número da linha 1 e coluna 3: 3
4 Digite o número da linha 1 e coluna 4: 7
5 Digite o número da linha 1 e coluna 5: -23
2 1 Digite o número da linha 2 e coluna 1: 15
2 Digite o número da linha 2 e coluna 2: 4
3 Digite o número da linha 2 e coluna 3: 2
4 Digite o número da linha 2 e coluna 4: 34
5 Digite o número da linha 2 e coluna 5: -4
3 1 Digite o número da linha 3 e coluna 1: 3
2 Digite o número da linha 3 e coluna 2: 45
3 Digite o número da linha 3 e coluna 3: 3
4 Digite o número da linha 3 e coluna 4: 0
5 Digite o número da linha 3 e coluna 5: -3
Tela
� Para mostrar os elementos de uma matriz, é 
necessário identificar as suas posições
FOR i:=1 TO 3 DO
BEGIN
FOR j:=1 TO 5 DO
BEGIN
WRITELN(X[i,j]);
END;
END;
1. Faça um programa em Pascal que preencha 
uma matriz M(2x2), calcule e mostre a 
matriz R, resultante da multiplicação dos 
elementos de M pelo seu maior elemento.
2. Crie um programa em Pascal que preencha 
uma matriz 8x8 com números inteiros e 
mostre uma mensagem dizendo se a matriz 
digitada é simétrica. Uma matriz só pode ser 
considerada simétrica se A[i,j] = A[j,i].
3. Crie um programa em Pascal que preencha 
uma primeira matriz de ordem 4x5 e uma 
segunda matriz 5x2. O programa deverá, 
também calcular e mostrar a matriz 
resultante do produto matricial das duas 
matrizes anteriores, armazenando-o em 
uma terceira matriz de ordem 4x2.

Continue navegando