1 / 13

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

Arranjos multidimensionais (ou matrizes) Adaptado de material da profa. Maria Aparecida Livi. matriz. notas. nota. 1 2 3 4 5 6. 1 2 3 4 5 6 7. alunos. Nota[4,2] Nota[6,3 ]. Arranjo bidimensional em Pascal (matriz).

zaza
Download Presentation

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

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. matriz notas nota 1 2 3 4 5 6 1 2 3 4 5 6 7 alunos Nota[4,2] Nota[6,3]

  3. Arranjo bidimensional em Pascal (matriz) • Declaração: Array [<lim_inf>..<lim_sup>, <lim_inf>..<lim_sup>] of <tipo>; • 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; limites da primeira dimensão limites da segunda dimensão

  4. Exemplo de leitura de valores e preenchimento de uma matriz 4x3 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.

  5. Exercício • Faça um programa Pascal queleiavalores e preenchaumamatriz 3x4 com valoresinteiros entre 0 e 10, inclusive (notas de alunos), e indique: • Quantasvezes a nota 9 aparecenamatriz. • Quantasvezesaparececada nota?

  6. Exemplo de solução 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]<0) OR (MA[I,J]>10) then writeln('numero invalido'); until (MA[I,J]>=0) and (MA[I,J]<=10); writeln; end;

  7. continuação {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.

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

  9. Exercício 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.

  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.

  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. Exercício 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.

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

More Related