Ir ao conteúdo
  • Cadastre-se
Kidorion

Portugol Dicas para resolver essa questão no PORTUGOL

Posts recomendados

Galera estou treinando no Portugol, mas essa questão em especifico eu não consegui resolver. Poderiam me ajudar ou apenas me dar dicas de como posso resolver ? 

 

Fazer um algoritmo que leia o nome e a altura de três pessoas, determinando e apresentando o nome e a altura do menor deles.

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Kidorion,você está com dúvidas em qual parte?

 

Tente, inicialmente, simplificar problema. Por exemplo: leia 3 números e informe qual o menor deles.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu fiz ao contrario, ao invés de mostrar o menor, eu mostrei o maior. Tentei arrumar, mas não consegui. Então vô mandar assim mesmo 😕

Var
   // Seção de Declarações das variáveis

   Nome: vetor[1..3] de caractere
   Altura: vetor[1..3] de real
   posicao: inteiro
Inicio
   // Seção de Comandos, procedimento, funções, operadores, etc...
   para posicao de 1 ate 3 faca
      escreva("Digite o seu nome: ")
      leia(Nome[posicao])
      escreval("")
      escreva("Digite a sua altura: ")
      leia(Altura[posicao])
      limpatela
   fimpara
   escreval("       REGISTROS        ")
   para posicao de 1 ate 3 faca
      escreval("nome","                    ","altura")

      ESCREVAl(Nome[posicao],"                   ", Altura[posicao])
   fimpara

   se (Altura[1]>Altura[2]) e (Altura[1]>Altura[3]) entao
      escreval("")
      escreval(Nome[1]," é o maior da lista,com:",Altura[1]," metros de altura")
   fimse
   
   se (Altura[2]> Altura[1]) e (Altura[2]>Altura[3]) entao
      escreval("")
      escreval(Nome[2]," é o maior da lista,com:",Altura[2]," metros de altura")
   fimse
   
   se (Altura[3]> Altura[1]) e (Altura[3]>Altura[2]) entao
      escreval("")
      escreval(Nome[3]," é o maior da lista,com:", Altura[3]," metros de altura")
   fimse
fimalgoritmo

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Alice Braga,

6 horas atrás, Alice Braga disse:

Eu fiz ao contrario, ao invés de mostrar o menor, eu mostrei o maior. Tentei arrumar, mas não consegui. Então vô mandar assim mesmo

 

Era só inverter de ">" para "<" nas condições. Mas ainda existirá ouros problemas, como no caso de empates. Experimente inserir duas ou mais alturas iguais, que sejam as menos (ou maiores, caso ainda não tenha corrigido)...

 

 

Segue alguns pontos:

 

1#

Seguindo a ideia de utilizar nomes de variáveis mais sugestíveis, seria preferível, por exemplo, utilizar as nomenclaturas dos vetores no plural. Vide:

var
   nomes: vetor[1..3] de caractere
   alturas: vetor[1..3] de real
   posicao: inteiro

Assim dando uma ideia que é um conjunto de coisas... :)

 

nome = 1 nome

nomes = conjunto de nomes

 

 

2#

Uma outra forma mais elegante para verificar o menor seria guardar a posição do então menor... exemplo:

algoritmo "semnome"
var
   nomes: vetor[1..3] de caractere
   alturas: vetor[1..3] de real
   posicao: inteiro

   indiceMenorAltura: inteiro
   i: inteiro
inicio
   para posicao de 1 ate 3 faca
      escreva("Digite o seu nome: ")
      leia(nomes[posicao])
      escreval("")
      escreva("Digite a sua altura: ")
      leia(alturas[posicao])
      limpaTela
   fimPara

   escreval("       REGISTROS        ")
   para i de 1 ate posicao faca
      escreval("Nome  : ", nomes[i])
      escreval("Altura: ", alturas[i]:1:2)
      escreval("")
   fimpara

   indiceMenorAltura := 1
   para i de 1 ate posicao faca
      se (alturas[i] < alturas[indiceMenorAltura]) entao
         indiceMenorAltura <- i
      fimSe
   fimPara
   
   escreva (nomes[indiceMenorAltura], " é o(a) mais baixo(a) da lista, com ")
   escreval(alturas[indiceMenorAltura]:1:2, " metros de altura")
fimAlgoritmo

 

Qual dúvida é só perguntar.

 

    • Amei 1

    Compartilhar este post


    Link para o post
    Compartilhar em outros sites

    Crie uma conta ou entre para comentar

    Você precisar ser um membro para fazer um comentário

    Criar uma conta

    Crie uma nova conta em nossa comunidade. É fácil!

    Crie uma nova conta

    Entrar

    Já tem uma conta? Faça o login.

    Entrar agora





    Sobre o Clube do Hardware

    No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

    Direitos autorais

    Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

    ×
    ×
    • Criar novo...

    Aprenda_a_Ler_Resistores_e_Capacitores-capa-3d-newsletter.jpg

    EBOOK GRÁTIS!

    CLIQUE AQUI E BAIXE AGORA MESMO!