A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1 Arranjos multidimensionais (ou matrizes) Adaptado de material da profa. Maria Aparecida Livi.

Apresentações semelhantes


Apresentação em tema: "1 Arranjos multidimensionais (ou matrizes) Adaptado de material da profa. Maria Aparecida Livi."— Transcrição da apresentação:

1 1 Arranjos multidimensionais (ou matrizes) Adaptado de material da profa. Maria Aparecida Livi

2 matriz notas alunos nota Nota[4,2] Nota[6,3 ]

3 Declaração: Array [..,.. ] of ; Exemplos: Var nota: array [1..7, 1..6] of real; X: array [1..3, 5..15] of integer; Y: array [0..99, 1..15] of string; Arranjo bidimensional em Pascal (matriz) 3 limites da primeira dimensão limites da segunda dimensão

4 Program testeMatriz; Var mat:array[1..4,1..3] of integer; I,K:integer; {indices para as 2 dimensões} Begin writeln('informe a matriz'); writeln; for I:=1 to 4 do for K:=1 to 3 do begin write('posicao ',I,', ',K,': '); readln(mat[I,K]); end; writeln; writeln('Matriz lida:'); for I:=1 to 4 do begin writeln; for K:=1 to 3 do write(mat[I,K]:4); end; readln; End. Exemplo de leitura de valores e preenchimento de uma matriz 4x3 4

5 5 Exercício Faça um programa Pascal que leia valores e preencha uma matriz 3x4 com valores inteiros entre 0 e 10, inclusive (notas de alunos), e indique: 1)Quantas vezes a nota 9 aparece na matriz. 2)Quantas vezes aparece cada nota?

6 6 Program exemplo2; var MA: array[1..3,1..4] of integer; total:array [0..11] of integer; noves,I,J:integer; begin noves:=0; {leitura na matriz } for I:=1 to 3 do begin writeln('Aluno ',I); for J:=1 to 4 do repeat readln(MA[I,J]); if (MA[I,J] 10) then writeln('numero invalido'); until (MA[I,J]>=0) and (MA[I,J]<=10); writeln; end; Exemplo de solução

7 7 {contagem de notas nove } for I:=1 to 3 do for J:=1 to 4 do if MA[i,j] = 9 then noves:=noves+1; writeln('havia ',noves, ' notas nove'); {contagem de todas as notas } for I:=0 to 10 do total[I]:=0; { inicializa com zero os totais } for I:=1 to 3 do for J:=1 to 4 do total[MA[I,J]] := total[MA[I,J]] + 1; for I:=0 to 10 do writeln('nota ',I,': ',total[I]); readln; end. continuação

8 8 Dada uma matriz M (5 x 7), preenchê-la por leitura e mostrar: 1.o maior elemento de cada linha da matriz; 2.o maior elemento de cada coluna da matriz; 3.a média dos elementos de cada coluna; 4.o produto de todos os elementos diferentes de zero; 5.quantos elementos são negativos; Exercício

9 9 Faça um algoritmo que leia duas matrizes de tamanho 3 x 3. Em seguida, compare os valores das duas matrizes, nas respectivas posições, e mostre quais números são iguais nas duas matrizes, na mesma posição. Informe também a posição. Exercício

10 Ler as 5 notas de cada um dos alunos (identificados por um número entre 1 e 7), calcular a média de cada aluno e, após, imprimir as notas e médias dos alunos com média acima da média geral da turma. 10

11 11 Program notas7alunos; Var nota:array[1..7,1..6] of real; N,A:integer; {indices para as 2 dimensões} Soma,media,somatot,mediageral:real; Begin somatot:=0; for A:=1 to 7 {para cada aluno} do begin soma:=0; for N:=1 to 5 {para cada nota do aluno} do begin readln(nota[A,N]); soma:=soma+nota[A,N]; {acumula soma das notas} end; media:=soma/5; Nota[A,6]:= media; {coloca a media do aluno na posição 6 } somatot:=somatot+soma; end; mediageral:=somatot/35; {calcula a media geral da turma} writeln('Notas de alunos com media maior que a da turma: ',mediageral:7:3); for A:=1 to 7 do if nota[A,6]> mediageral then begin writeln; for N:=1 to 6 do write (nota[A,N]:8:3); end; readln; End.

12 12 Faça um algoritmo que leia duas matrizes A e B de tamanho 4 x 4, conte e mostre quais dos valores que estão na matriz A também aparecem na matriz B, independente de sua posição na matriz B. Exercício

13 13 Exercício Faça um programa que leia uma matriz 10x10 e diga se a matriz é simétrica ou não.


Carregar ppt "1 Arranjos multidimensionais (ou matrizes) Adaptado de material da profa. Maria Aparecida Livi."

Apresentações semelhantes


Anúncios Google