AULA 21 - 04/07/2011 - Exercitando vetores e matrizes ..
Autor: Maike Nunes | Publicado: 2011-07-05T10:50:00-07:00

&nbsp;&nbsp; Na aula de hoje o professor passou mais três exercícios para resolvermos, dando a aula inteira para resolução destes, que serão corrigidos na próxima aula, que será no laboratório. Abaixo segue os exercícios resolvidos.


1 - Faça um programa que preencha dois vetores de cinco elementos numéricos cada um e mostre o vetor resultante da multiplicação dos valores destes vetores. Vetor 1:
   3   5   4   2   2  
   1   2   3   4   5  

Vetor 2:
   7   15   20   0   18  
   1   2   3   4   5  

Vetor resultante da multiplicação:
   21   75   80   0   36  
   1   2   3   4   5   

algoritmo "mult1"
var
&nbsp;&nbsp; pm: vetor[1..5] de real
&nbsp;&nbsp; sm: vetor[1..5] de real
&nbsp;&nbsp; rm: vetor[1..5] de real
&nbsp;&nbsp; n: inteiro
inicio
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA n de 1 ate 5 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("Digite um número a ser multiplicado: ")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; leia(pm[n])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("Digite um número a ser multiplicado com o número acima: ")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; leia(sm[n])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rm[n]&lt;-(pm[n]*sm[n])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA n de 1 ate 5 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("A multiplicação ",n," tem resultado: ",rm[n])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
fimalgoritmo
Download arquivo alg. 
2 - Uma pequena loja de artesanato possui apenas um vendedor e comercializa dez tipos de objetos. O vendedor recebe, mensalmente, salário de R$ 400,00, acrescido de 5% do valor total de suas vendas. O valor unitário dos objetos deve ser informado e armazenado em uma matriz; a quantidade vendida de cada peça deve ficar na mesma matriz, em outra coluna. Crie um programa que receba os preços e as quantidades vendidas e armazenando-os na matriz. Depois determine e mostre: um      relatório contendo quantidade vendida, valor unitário e valor total de      cada objeto. Ao final deverá ser mostrado um valor geral das vendas e o      valor da comissão que será paga ao vendedor
o      valor do objeto mais vendido e sua posição na matriz (mostre linha e      coluna. Não se preocupe com empates). 
algoritmo "loja2"
var
&nbsp;&nbsp; prod: vetor[1..10,1..2] de real
&nbsp;&nbsp; vg,vt,porc,maior: real
&nbsp;&nbsp; n,posic: inteiro
inicio
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vg&lt;-0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA n de 1 ate 10 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("Digite o valor unitario do objeto ",n,": ")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; leia(prod[n,1])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("Digite a quantidade vendida do produto",n,": ")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; leia(prod[n,2])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA n de 1 ate 10 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vt&lt;-(prod[n,1]*prod[n,2])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; vg&lt;-(vg+vt)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("O produto ",n," tem valor R$ ",prod[n,1]," e foram vendidos ",prod[n,2]," unidades, obtendo o valor total R$ ",vt,".")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; porc&lt;- ((vg*5)/100)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; posic&lt;-1
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maior&lt;-prod[1,2]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA n de 2 ate 10 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SE (maior &lt; prod[n,2]) ENTAO
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; maior&lt;- prod[n,2]
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; posic&lt;- n
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMSE
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("O valor geral das vendas é ",vg," e a comissão ganha pelo vendedor neste mês foi de ",porc,".")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("O valor do objeto mais vendido foi R$",prod[posic,1]," e esta localizado na coluna 2 e na linha ",posic,".")
fimalgoritmo

Download arquivo alg.&nbsp;

3 - Faça&nbsp; um&nbsp; programa&nbsp; que&nbsp; preencha&nbsp; uma&nbsp; matriz&nbsp; 10&nbsp; x&nbsp; 3&nbsp; com&nbsp; as notas&nbsp; de&nbsp; dez&nbsp; alunos&nbsp; em&nbsp; três&nbsp; provas. O programa deverá mostrar&nbsp; um&nbsp; relatório&nbsp; com&nbsp; o&nbsp; número&nbsp; dos&nbsp; alunos&nbsp; (número&nbsp; da linha) e a média do aluno nas 3 provas. Ao final do relatório, deverá mostrar a média geral de todos os alunos. 
algoritmo "alun3"
var
&nbsp;&nbsp; not: vetor [1..10, 1..3] de real
&nbsp;&nbsp; mediag,media,contmediag: real
&nbsp;&nbsp; l, c: inteiro
inicio
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA l de 1 ate 10 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA c de 1 ate 3 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("Digite a nota da prova ",c," do aluno ",l,": ")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; leia(not[l,c])
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contmediag&lt;-0
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; PARA l de 1 ate 10 FACA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; media&lt;-((not[l,1]+not[l,2]+not[l,3])/3)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("O aluno ",l," teve média ",media,".")
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; contmediag&lt;-contmediag+media
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; FIMPARA
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; mediag&lt;- contmediag/10
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; escreval("A média geral foi ",mediag)
fimalgoritmo 
 
Download arquivo alg. 

&nbsp; &nbsp; Como de costume a lógica é sempre a grande vilã da aula, mas tive grande facilidade em resolver a primeira questão, tendo facilidade também para compreender a segunda questão, sendo difícil adaptar a minha lógica ao algoritmo, acabei fazendo do jeito mais difícil segundo o professor, mas pelo menos consegui resolver as questões.&nbsp;