Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Stefanycdz

[Resolvido] Vetor resultante

Recommended Posts

Usando a estrutura de dados homogênea unidimensional (Vetor) elabore um algoritmo que leia dois vetores contendo a nota 35 alunos. O Vetor1 contém a nota do 1º bimestre e o Vetor2 contém a nota do 2º bimestre. Em seguida, armazene em um Vetor3 a média das notas dois vetores lidos. Calcule a média da turma, o total de alunos que tiraram notas acima da média. Ao final, imprima o vetor resultante, a média da turma, e total de aluno que obtiveram nota acima da média.

 

Eu fiz assim:

 

algoritmo "Questao10"
// Função :
// Autor :
// Data : 29/7/2009
// Seção de Declarações 
var
nota1: vetor [1..35]de real
nota2: vetor [1..35]de real
media: vetor [1..35]de real
mediadaturma,soma:real
aprovados,i: inteiro

inicio
aprovados <- 0
mediadaturma <- 0
soma <- 0

Para i De 1 Ate 35 Passo 1 Faca
Escreva ("Digite a nota do 1o bim: ")
Leia(nota1[i])
FimPara

Para i De 1 Ate 35 Passo 1 Faca
Escreva ("Digite a nota do 2o bim: ")
Leia(nota2[i])
FimPara

Para i De 1 Ate 35 Passo 1 Faca
media[i] <- (nota1[i] + nota2[i]) / 2
FimPara

Para i de 1 ate 35 passo 1 faca
soma <- soma + media[i]
fimpara
mediadaturma <- soma/3

Para i De 1 Ate 35 Passo 1 Faca
Se media[i] > mediadaturma entao
aprovados <- aprovados + 1
fimse
fimpara
Escreval ("Media da turma: ",mediadaturma," ")
Escreva ("Total de alunos acima da media da turma: ",aprovados," ")
Fimalgoritmo

 

Se possível, gostaria que fosse corrigido até onde eu fui e também ajuda na última coisa que está faltando, que é "imprima o vetor resultante". Eu não sei nem direito o que é pra fazer nisso ai, então por favor paciência ^^'. Agradeço a compreensão desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom primeiramente, você esta usando loops desnecessarios, veja o pq:

Você esta fazendo assim:

Para i De 1 Ate 35 Passo 1 Faca
media[i] <- (nota1[i] + nota2[i]) / 2
FimPara

Para i de 1 ate 35 passo 1 faca
soma <- soma + media[i]
fimpara
Isso você muito bem pode simplificar para:

Para i De 1 Ate 35 Passo 1 Faca
media[i] <- (nota1[i] + nota2[i]) / 2
soma <- soma + media[i]
Fimpara
Por ser um programa pequeno num faz tanta diferença + jah é bom você ir ficando esperto nisso.

 

Segundo, acho q você deve ter comido o 5 na hora de fazer a media da turma, o correto é:

mediadaturma <- soma/35

e a ultima coisa era imprimir o vetor resultante, como isso ta sendo pedido pra ser impresso primeiro, vamos imprimir ele aproveitando o loop q jah calcula esse vetor assim:

Para i De 1 Ate 35 Passo 1 Faca
media[i] <- (nota1[i] + nota2[i]) / 2
soma <- soma + media[i]
Esreval(media[i])
Fimpara

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom primeiramente, você esta usando loops desnecessarios, veja o pq:

Você esta fazendo assim:

Para i De 1 Ate 35 Passo 1 Faca
media[i] <- (nota1[i] + nota2[i]) / 2
FimPara

Para i de 1 ate 35 passo 1 faca
soma <- soma + media[i]
fimpara
Isso você muito bem pode simplificar para:

Para i De 1 Ate 35 Passo 1 Faca
media[i] <- (nota1[i] + nota2[i]) / 2
soma <- soma + media[i]
Fimpara
"Por ser um programa pequeno num faz tanta diferença + jah é bom você ir ficando esperto nisso."

 

-> Obrigada pela dica, eu não tinha percebido isso. =)

 

"Segundo, acho q você deve ter comido o 5 na hora de fazer a media da turma, o correto é:"

mediadaturma <- soma/35

-> Realmente, comi o 5, pq tava fazendo teste com o 3 no visualg e não com o 35, e nessa parte eu esqueci de mudar.

 

"e a ultima coisa era imprimir o vetor resultante, como isso ta sendo pedido pra ser impresso primeiro, vamos imprimir ele aproveitando o loop q jah calcula esse vetor assim:"

Para i De 1 Ate 35 Passo 1 Faca
media[i] <- (nota1[i] + nota2[i]) / 2
soma <- soma + media[i]
Escreval(media[i])
Fimpara

-> Então, esse assombroso "vetor resultante"(para mim) era apenas imprimir todas as médias? :o

[]s

 

Muito obrigada mesmo ^^.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.