sábado, 4 de junho de 2011

Exercicio 4 de Multidimensional

Program Pzim ;
{Utilizando a tabela da questão 1, elabore um algoritmo que leia os valores da tabela
fornecida. No final, imprima os valores.}
var
m:array[1..3,1..2] of integer;
maior,menor, i,j:integer;

 Begin
    {inicio do programa}
     for i:=1 to 3 do
         begin
             for j:=1 to 2 do
                 begin
                     writeln('Digite os valores da matriz : ');
                     readln(m[i,j]);
                 end;
         end;       
         clrscr; // limpa a tela
         {recebe todos os valores da matriz de 6 posições}
    
     for i:=1 to 3 do
         begin
             for j:=1 to 2 do
                 begin
                     if ((i = 1) and (j = 1)) then         // a condição é que se i e j igual a 1, quer dizer a
                                                 //primeira posição da matriz
                         begin
                             maior:=m[1,1];           //    maior recebe o valor da primeira posição
                             menor:=m[1,1];            //    menor recebe o mesmo valor
                         end;
                 end;
         end;
        {atribui às variaveis maior e menor, os valores da primeira posição da matriz m}
       
    for i:=1 to 3 do
        begin
            for j:=1 to 2 do
                begin
                    if (m[i,j] > maior) then
                        begin
                            maior:=m[i,j] 
                        end                   // antes de um else não existe ponto e virgula
                    else
                    if (m[i,j] < menor) then
                        begin
                            menor:=m[i,j]
                        end;
                end;
        end;
    {compara todas as posições da matriz, tanto a variavel maior, como a variavel menor}
   
     writeln('O maior número é : ',maior, ' e o menor número é : ',menor);
    {exibe os dois numeros.}

     writeln; // dá uma quebra de linha, para uma melhor visualização

   
    for i:=1 to 3 do
         begin
             for j:=1 to 2 do
                 begin
                     write(m[i,j],' ');          // exibe os valores da matriz
                 end;
                 writeln;                     // quando termina os valores de uma linha, esse comando dá
                                         // uma quebra de linha
         end;       
        readkey;         //espera que seja digitado alguma tecla para sair
   
 End.