quarta-feira, 29 de junho de 2011

Aula 20 - 29/06/11

                               Matriz

Slide explicativo sobre matriz.




Exercícios Matriz
1) Faça um programa que preencha uma matriz 10 x 3 com as notas de dez alunos em três provas. O  programa deverá mostrar um relatório com o número dos alunos (numero da linha) e a prova em que cada aluno obteve menor nota. Ao final do relatório, deverá mostrar quantos alunos tiveram menor nota em cada uma das provas: na prova 1, na prova 2 e na prova 3.

Algoritmo "Matriz Exercício 1"

var
provas: vetor [1..10,1..3] de inteiro
a,b,c,prova1,prova2,prova3:inteiro
inicio
para a de 1 ate 10 faca
   para b de 1 ate 3 faca
      escreva ("da linha ",a," e coluna ",b, " - nota: ")
      leia (provas[a,b])
   fimpara
fimpara
prova1 <- 0
prova2 <- 0
prova3 <- 0
para c de 1 ate 10 faca
   se (provas[c,1] < provas[c,2]) e (provas[c,1] < provas[c,3]) entao
      escreval ("Aluno ",c," Menor nota é na prova 1 tendo a nota: ",provas[c,1])
      prova1 <- prova1 + 1
   senao
      se (provas[c,2] < provas[c,1]) e (provas[c,2] < provas[c,3]) entao
         escreval ("Aluno ",c," Menor nota é na prova 2 tendo a nota: ",provas[c,2])
         prova2 <- prova2 + 1
      senao
         se (provas[c,3] < provas[c,1]) e (provas [c,3] < provas[c,2]) entao
            escreval ("Aluno ",c," Menor nota é na prova 3 tendo a nota: ",provas[c,3])
            prova3 <- prova3 + 1
         fimse
      fimse
   fimse
fimpara
escreval ("Na primeira prova ",prova1," tiraram nota baixa.")
escreval ("Na segunda prova ",prova2," tiraram nota baixa.")
escreval ("Na terceira prova ",prova3," tiraram nota baixa.")
fimalgoritmo





2) Faça um programa que preencha uma matriz de 5 x 5 com números inteiros, calcule e mostre os números superiores a cinquenta e suas respectivas posições (linha e coluna). O programa deverá mostrar mensagem se não existir nenhum número nessa condição. 

Algoritmo "Matriz Exercício 2"

var
num: vetor [1..5,1..5] de inteiro
a,b,c,d,cont:inteiro
inicio
cont <- 0
para a de 1 ate 5 faca
   para b de 1 ate 5 faca
      escreval ("Linha:",a," Coluna:",b," Escreva um número: ")
      leia (num[a,b])
      se (b = 5) entao
      limpatela
      fimse
   fimpara
fimpara
para c de 1 ate 5 faca
   para d de 1 ate 5 faca
      se (num[c,d] > 50 ) entao
         escreval ("Numero:",num[c,d]," Linha: ",c," Coluna: ",d)
         cont <- cont + 1
      fimse
   fimpara
fimpara
se (cont = 0) entao
   escreval ("Nao foi digitado número superior a 50")
fimse
fimalgoritmo




Bom um pouco mais complicado que vetor, o primeiro exercício foi meio difícil de fazer acho que n tinha intendido muito bem, o segundo já foi mais fácil.

Nenhum comentário: