hzez Postado Março 29, 2018 Denunciar Share Postado Março 29, 2018 Uma questão simples, mas que estou tendo dificuldades: inserir o tempo de corrida de 5 participantes e imprimir os 3 primeiros lugares [Portugol; favor, preferencialmente utilizar condicionais] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ThiagoD Postado Maio 21, 2018 Denunciar Share Postado Maio 21, 2018 (editado) Bom, já faz algum tempo que esse tópico foi criado e, provavelmente o hzez já encontrou a soluçao para o problema, porem, acho interessante deixar uma resposta afim de praticar e deixar registrado. Acho que e mais ou menos isso que o hzez pediu... mas... eu pensei agora... e, acho que seria interessante criar uma soluçao para o caso de terem competidores com o mesmo tempo... por exemplo: 1- tempo: 3.34 2- tempo: 4.42 3- tempo: 4.98 4- tempo: 4.98 Assim, o algoritmo teria que identificar os tres melhores tempos e imprimir 4 competidores. Seria legal mas, no momento, estou com preguiça hehehe deixa pra depois... // Algoritmo criado para ajudar membro do forum Script Brasil. // Esse algoritmo recebe cinco valores ("tempos") de cinco participantes diferentes e... // imprime os tres menores tempos (em ordem crescente) na saida. // Escrito por ThiagoD Algoritmo "MostraMelhoresColocados" Var TEMPOS : VETOR[0..4] DE REAL A,B : INTEIRO C : REAL Inicio PARA A:=0 ATE 4 FACA // esse trecho vai repetir 5x e guardar o tempo de cada participante no vetor TEMPOS LIMPATELA ESCREVA("Digite o tempo do",A+1,"o Participante: ") LEIA(TEMPOS[A]) FIMPARA PARA A:=0 ATE 3 FACA B:=A+1 REPITA SE (TEMPOS[A]>TEMPOS[B]) então // se o tempo guardado no indice A for maior q o tempo do indice B C:=TEMPOS[A] // o valor do indice A sera substituido pelo valor do indice B, e B recebera o valor de A TEMPOS[A]:=TEMPOS[B] // mas, para isso, usaremos a variavel C para guardar temporaria mente o valor do indice A TEMPOS[B]:=C FIMSE B:=B+1 ATE(B>4) FIMPARA LIMPATELA PARA A:=0 ATE 2 FACA// por fim, vamos imprimir os valores dos 3 primeiros indices na saida. ESCREVAL(A+1,"o Colocado - Tempo: ",TEMPOS[A]) FIMPARA Fimalgoritmo Editado Maio 21, 2018 por ThiagoD corrigir bug ocorrido na hora da postagem. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
hzez
Uma questão simples, mas que estou tendo dificuldades: inserir o tempo de corrida de 5 participantes e imprimir os 3 primeiros lugares [Portugol; favor, preferencialmente utilizar condicionais]
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.