Ir ao conteúdo
  • Cadastre-se

VisualG Estou com dificuldade de resolver a quantidade de pessoas!


Posts recomendados

Algoritmo "teste-66"

Var

   cont, idade, soma, mais, menos, maior : inteiro
   media : real

Inicio

   cont <- 1
   enquanto (cont <= 6) faca
      escreval("--------------------------------------- ")
      soma <- soma + idade
      escreva("Digite a idade da", cont, "º pessoa: ")
      leia(idade)
      se (cont = 1) então
         maior <- idade
         mais <- idade
         menos <- idade
      senao
         se (idade > maior) então
            maior <- idade
         senao
            se (idade < 5) então
               menos <- idade
            senao
               se (idade > 18) então
                  mais <- idade
               fimse
            fimse
         fimse
      fimse
      cont <- cont + 1
   fimEnquanto
   escreval("--------------------------------------- ")
   media <- soma / cont
   escreval("Qual é a media de idade do grupo: ", media:4:2)
   escreval("Quantas pessoas tem mais de 18 anos: ", mais)
   escreval("Quantas pessoas tem menos de 5 anos: ", menos)
   escreval("Qual foi a maior idade lida: ", maior)

Fimalgoritmo

 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Qual dificuldade?

 

Mas vamos lá... a quantidade seria basicamente uma soma... só que seria de um em um (devido ao contexto).

 

Ex.:

      se (idade < 5) então
         menos5 <- menos5 + 1

 

Adendo: teu algoritmo tem pequenos outros probleminhas, mas aí você vai testando e tentando entender o que está errado... Após tenta corrigir.

 

Adianto um ponto: essa variável menos5, por exemplo, deve ser inicializada com 0, ou seja, quando eventualmente uma idade for menor que 5, vai ficar "0 + 1", que dá "1"... depois "1 + 1", que dá "2" etc.

 

DICA GERAL:

Não tente fazer tudo de uma vez só. A sugestão é inserindo um "tópico" de cada vez. Por exemplo... se decidir começar pelo "menos de 5 anos".

 

algoritmo "teste-66"
var
   idade, menos5: inteiro
   cont: inteiro
inicio
   cont <- 0
   menos5 <- 0

   enquanto (cont < 6) faca
      cont <- cont + 1
      escreval("--------------------------------------- ")
      escreva ("Digite a idade da ", cont:1, "º pessoa: ")
      leia(idade)

      se (idade < 5) então
         menos5 <- menos5 + 1
      fimse
   fimEnquanto

   escreval("--------------------------------------- ")
   escreval("Quantidade de pessoas que tem menos de 5 anos: ", menos5:1)
fimAlgoritmo

 

Veja: para chegar nesse código, eu testei o programa umas 4 vezes... imagine se tivesse tudo junto? Daí, supondo que está "tudo mais ou menos certo", inseriria outro "tópico" qualquer... sei lá, o dá média.

 

Focaria nos teste da média... até ficar redondo... ao mesmo tempo que cuida para não bagunçar o que já está feito.

Por que isso? Se algo der errado ao inserir algo novo, terá uma boa referência que o problema está especificamente naquilo que inseriu novou, ou seja, "se antes estava ok, e agora deu problema... tudo indica que foi aquilo novo que bagunçou"... aí fica mais fácil para focar em achar o problema e corrigir.

 

RESUMINDO:

 

Sugiro pegar o código acima como referência. Tenta adicionar o "tópico" da média. Para facilitar os testes. Insira números repetidos.. ex.: só 4. Daí, a média tem que dá 4. (Faça inicialmente faça testes simples.)

 

No aguardo.

 

Adendo 2:

Como sempre vai entrar no laço de repetição, poderia utilizar repita. Ex.:

 

algoritmo "teste-66"
var
   idade, menos5: inteiro
   cont: inteiro
inicio
   cont <- 0
   menos5 <- 0

   repita
      cont <- cont + 1
      escreval("--------------------------------------- ")
      escreva ("Digite a idade da ", cont:1, "º pessoa: ")
      leia(idade)

      se (idade < 5) então
         menos5 <- menos5 + 1
      fimse
   ate cont >= 6

   escreval("--------------------------------------- ")
   escreval("Quantidade de pessoas que tem menos de 5 anos: ", menos5:1)
fimAlgoritmo

 

Veja... como "eu teria uma noção de que antes de mudar de enquanto para repita estava funcionando, eu foquei apenas em mudar isso... se parou de funcionar, comparo com o código que tinha antes... ou simplesmente desfaço tudo... (Aí vai do teu controle de backup ou gerenciamento do Ctrl+Z.). Se precisa ou prefere enquanto, não tem problema... foi só para exemplificar.

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!