Ir ao conteúdo

Posts recomendados

Postado

Tava treinando logica mas eu fiquei preso em uma parte , fiz um codigo que pega uma quantidade de pessoas vamos supor que é 5 , para essas 5 tem valores diferentes , queria pegar o maior valor dentre as 5 , mas quando faço isso eu acabo pegando o valor "5" da quantidade de pessoas  e nao dos valores

algoritmo "semnome"
var
   cont ,A, N: Inteiro
   M: real

inicio
   Escreval("quantos alunos a sala tem? ")
   Leia(A)
   cont <- 1
   Enquanto (cont <= A)faca
      Escreva("Digite a nota do aluno:")
      Leia(N)
      cont <- cont + 1
   FimEnquanto
fimalgoritmo

   

  • Curtir 1
  • Amei 1
Postado

@Semnet      para saber o maior numero dos cinco voce pode colocar uma variavel inicializada com o valor zero e a cada valor digitado pelo usuario voce faz uma comparacao com aquela variavel usando o comando ,  se  , e se for maior entao faz aquela variavel igual ao valor digitado 

Postado

@Semnet       seu código está bom , só faltou ver qual é o maior número , então seu código com algumas modificações poderia ser assim   :

algoritmo "pegar o maior nmr"
var
  cont ,A, N, maior : Inteiro
  M                 : real
inicio
  Escreva("quantos alunos a sala tem ? ")
  Leia(A)
  Enquanto cont < A faca  // aqui não precisa de abre e fecha parenteses
    Escreva("Digite a nota do aluno ",cont," : ")
    Leia(N)
    
    se N > maior entao
      maior := N
    fimse
    
    cont <- cont + 1
  FimEnquanto
  escreval
  escreval("O Mior Número é -> ",maior)
fimalgoritmo

 

  • Curtir 1
  • Membro VIP
Postado

Olá. Alguns pontos:

 

22 horas atrás, Semnet disse:

[...] queria pegar o maior valor dentre as 5 , mas quando faço isso eu acabo pegando o valor "5" da quantidade de pessoas  e nao dos valores

 

No código que você postou, você nem está pegando o maior (nem mostrando qual seria) :), ou seja: se estava fazendo de uma forma e estava com erro, seria interessante mostrar ela, para assim tentarmos ver o que supostamente estava errado.

 

Ficaria algo assim:

algoritmo "Maior entre uma faixa de números"
var
   cont, A, N: inteiro
   M: real

inicio
   escreval("quantos alunos a sala tem? ")
   leia(A)
   cont <- 1
   enquanto (cont <= A) faca
      escreva("Digite a nota do aluno:")
      leia(N)
      cont <- cont + 1
      se N > M entao //faltou ir verificando o maior
         M := N
      fimse
   fimEnquanto
   escreval("O maior número é -> ", M) //e faltou mostrar o maior
fimAlgoritmo

 

 

 

Agora outros pontos notáveis:

 

1#

Sobre as variáveis:

22 horas atrás, Semnet disse:

var
   cont ,A, N: Inteiro
   M: real

 

Se o número é inteiro, o maior também vai ser inteiro. Não tem porque utilizar real.

var
   cont, A, N, M: inteiro

 

 

2#

Seria preferível utilizar nomenclatura de variáveis mais sugestivas, ex.:

var
   cont :inteiro
   qtdAlunos :inteiro
   notaAluno :inteiro
   maiorNota :inteiro

 

 

 

3#

Um exemplo de como poderia ficar:

algoritmo "Maior entre uma faixa de números"
var
   cont :inteiro
   qtdAlunos :inteiro
   notaAluno :inteiro
   maiorNota :inteiro
inicio
   escreval("Quantos alunos a sala tem? ")
   leia(qtdAlunos)
   cont <- 1
   enquanto (cont <= qtdAlunos) faca
      escreva("Digite a nota do aluno: ")
      leia(notaAluno)
      cont <- cont + 1
      se (notaAluno > maiorNota) entao
         maiorNota <- notaAluno
      fimSe
   fimEnquanto
   escreval("A maior nota foi -> ", maiorNota)
fimAlgoritmo

PS: os parênteses no enquanto e no se quando tem apenas uma sentença é facultativo... vai do gosto usar ou não (eu estou preferindo usar!)

 

 

 

4#

Como é uma quantidade determinada de loops, poderia utilizar um para/faca.

   escreval("Quantos alunos a sala tem? ")
   leia(qtdAlunos)
   para cont de 1 ate qtdAlunos faca
      escreva("Digite a nota do aluno: ")
      leia(notaAluno)
      se (notaAluno > maiorNota) entao
         maiorNota <- notaAluno
      fimSe
   fimPara
   escreval("A maior nota foi -> ", maiorNota)

 

 

  • Curtir 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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...