Jump to content


Photo

Pesquisando Em Vetores!


  • Faça o login para participar
4 replies to this topic

#1 Diegostf

Diegostf

    Novato no fórum

  • Usuários
  • 12 posts
  • Sexo:Não informado

Posted 21/10/2008, 01:39

Pessoal!
alguem poderia me ajudar, nao estou conseguindo elaborar meus exercicios de pesquisa em Vetores!

Segue o Exercicio!

A partir de 2 Vetores: um contendo numero de matricula de um aluno e outro, na mesma posição,contendo as Medias Finais,em orden descrescente,dos 100 alunos de uma turma,montar um algoritmo para imprimir os codigos dos alunos que obtiveram nota media Superior a um Valor (Aleatorio) proviamente indicado!

tentei fazer:


aluno:vetor[1..100]de inteiro
media:vetor[1..10]de inteiro
i,iniciu,aux1,aux2:inteiro
primeira,ultima,metade:inteiro
achou: logico

PARA i DE 1 ATE 100 FACA
escreva ("Digite a matricula do aluno")
leia (aluno[i])
escreva ("Digite a media Final")
leia (media[i])
FIMPARA

PARA iniciu DE 1 ATE 99 FACA
PARA i DE iniciu +1 ATE 100 FACA
SE media[iniciu] < media[i] ENTAO
aux1 <- media[iniciu]
aux2 <- aluno[iniciu]
media[iniciu] <- media[i]
aluno[iniciu] <- aluno[i]
media[i] <- aux1
aluno[i] <- aux2
FIMSE
FIMPARA
FIMPARA


escreva ("Digite a Media necessaria, Para saber quem esta aprovado ou reprovado!")

primeira <- 1
ultima <- 100
achou <- FALSO

travei nesta parte galera eu consigo montar para pesquisar 1 ou mais numeros em Vetor!
mais para Digitar um Numero "Media" e fazer ele verificar dentro do vetor pra saber se a nota de cada pessoa e menor ou maior que a media Aleatoria que digitei ja complica minha cabeça!!

Alguem poderia me ajudar?
Obrigado!!

#2 Édipo Costa Rebouças

Édipo Costa Rebouças

    Veterano

  • Ex-Admins
  • 1079 posts
  • Sexo:Masculino
  • Localidade:Brasil - São Paulo

Posted 21/10/2008, 09:19

Pelo que entendi, os valores irão ser adicionados no vetor, e o primeiro valor de um vetor corresponde ao primeiro valor do outro.

terei dois vetores.

vetor aluno;

vetor nota;

uma média;

então fica assim

para (contador = 0 ; contador < aluno.tamanho-1; soma 1 ao contador){

se (nota[contador] >= média){ imprime aluno[contador] }
}

exemplo em java

[codebox]
public void quemNaoSeFudeu(int aluno[], int nota[], int media)
{

for(int cont = 0; cont < v.lenght-1; cont++ )
{
if(nota[cont] >= media){ System.out.println("nome: " + aluno[cont] +" nota: " + nota[cont]) }
}

}
[/codebox]

#3 Diegostf

Diegostf

    Novato no fórum

  • Usuários
  • 12 posts
  • Sexo:Não informado

Posted 21/10/2008, 17:15

Entao edipo eu fiz da seguinte forma sera que esta correto tb?


aluno:vetor[1..5]de caractere
nota:vetor[1..5]de inteiro
aprovado:vetor[1..5]de caractere
i,nlido:inteiro

Supondo que os vetore ja estejam com os nomes e as notas!!

(fiz um vetor so de 5 posição pra dar pra explicar aqui)

aluno[1] <- luiz
aluno[2] <- pedro
aluno[3] <- joao
aluno[4] <- maria
aluno[5] <- fulano

nota[1] <- 10
nota[2] <- 5
nota[3] <- 6
nota[4] <- 3
nota[5] <- 4


escreva ("Digite a nota minima para aprovação")
leia (nlido)

PARA i DE 1 ATE 5 FACA
Se nlido >= nota[i] ENTAO
aprovado[i] <- "APROVADO"
SENAO
aprovado[i] <- "REPROVADO"
FIMSE
FIMPARA

PARA i DE 1 ATE 5 FACA
escreva (aluno[i],aprovado[i]
FIMPARA

Edição feita por: Diegostf, 21/10/2008, 17:16.


#4 Édipo Costa Rebouças

Édipo Costa Rebouças

    Veterano

  • Ex-Admins
  • 1079 posts
  • Sexo:Masculino
  • Localidade:Brasil - São Paulo

Posted 21/10/2008, 19:57

Só tem um erro

escreva ("Digite a nota minima para aprovação")
leia (nlido)

PARA i DE 1 ATE 5 FACA
Se nlido >= nota[i] ENTAO //Aqui você errou e eu tb, nlido tem que ser menor para dar aprovado, vc colocou maior e eu <=
Uma implementação correta em javascript do seu algoritimo, a implementação esta com um comentario indicando o erro.

<script type="javascript">//  <![CDATA[   var aluno= new Array();  var nota= new Array();  var aprovado =  new Array();    aluno[1] = "luiz";  aluno[2] = "pedro";  aluno[3] = "joao";  aluno[4] = "maria";  aluno[5] = "fulano";    nota[1] = 10;  nota[2] = 5;  nota[3] = 6;  nota[4] = 3;  nota[5] = 4;    var nlido = prompt(" Digite a nota minima para aprovação ");    for(i=1; i < 6; i++ ){    if( nlido < nota[i]) aprovado[i] = "APROVADO"; //Você errou aqui e eu também    else  aprovado[i] = "REPROVADO";  }    for(i=1; i < 6; i++ ) alert(aluno[i] + aprovado[i]); //  ]]>

Edição feita por: Édipo Costa Rebouças, 21/10/2008, 19:58.


#5 Diegostf

Diegostf

    Novato no fórum

  • Usuários
  • 12 posts
  • Sexo:Não informado

Posted 22/10/2008, 18:45

è verdade, Obrigado edipo por me ajudar!!
abraços!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq