Ir ao conteúdo

Posts recomendados

Postado

Tenho um algoritmo aqui e queria que me ajudassem a resolver essa questão(Qual o número de habitantes em cada uma das idades possíveis.). Ou seja, eu tenho que pegar o número dentro do vetor e ver quantas vezes esse número repete depois imprimir isso. Algoritmo: 

programa
{
    inclua biblioteca Tipos --> tp
    inclua biblioteca Matematica --> mat
    
    funcao inicio()
    {
        inteiro idade,idadev[6],menor=999999999,maior=0,minimo=0,maximo=0,soma=0,quant=0,media,menos=0,c=0
        cadeia nome,nomev[6]
        para(inteiro posicao=0;posicao<5;posicao++){
            escreva("Qual o nome do " , posicao+1 , "º habitante? ")
            leia(nome)
            nomev[posicao] = nome
            escreva("Qual a idade de " , nome , ", o habitante número " , posicao+1 , "? ")
            leia(idade)
            idadev[posicao] = idade
            se(idade<menor){
                menor = idade
            }
            se(idade>maior){
                maior = idade
            }
            soma=soma+idade
            quant=quant+1
        }
//QUANTAS PESSOAS TEM A MENOR IDADE DA CIDADE
        para(inteiro achar2=0;achar2<5;achar2++){
            se (idadev[achar2]==menor){
                minimo = minimo+1
            }
        }
///
//IDADE DO HABITANTE MAIS NOVO
        escreva("Os habitantes que têm a menor idade(",menor," ano(s)) da cidade são(", minimo ,"): \n")
        para(inteiro achar=0;achar<5;achar++){
            se (idadev[achar]==menor){
                escreva(nomev[achar], "\n")
            }
        }
///
//IDADE DO HABITANTE MAIS VELHO
        escreva("Os habitantes que têm a maior idade(",maior," ano(s)) da cidade são(", maximo ,"): \n")
        para(inteiro achar1=0;achar1<5;achar1++){
            se (idadev[achar1]==maior){
                escreva(nomev[achar1], "\n")
            }
        }
///
//MÉDIA DE IDADE DOS HABITANTES
        media=soma/quant
        escreva("A média de idade dos habitantes da cidade é: " , media , "\n")
///
//HABITANTES COM IDADE MENOR QUE A MÉDIA
        para(inteiro menores=0;menores<5;menores++){
            se(idadev[menores]<media){
                menos=menos+1
            }
        }
        escreva("Têm " , menos , " habitantes com idade abaixo da média.\n")
///        
    }
 }

  • Obrigado 1
Postado

@Walther Fernandes    o que o enunciado está pedindo é para imprimir a quantidade de habitante , e isso é igual ao contador que é a variável posicao ,  então nem precisa fazer cálculos e para cadastrar um número indeterminado você pode usar um loop  repita ate  que poderia ser assim :

programa
{
    inclua biblioteca Tipos --> tp
    inclua biblioteca Matematica --> mat
    
    funcao inicio()
    {
        inteiro idadev[6],menor,maior=0,minimo=0,maximo=0,soma=0,quant=0,media,menos=0,c=0
        cadeia nomev[6],idade[6]
        enquanto(resp != 0){
            escreva("Qual o nome do " , posicao+1 , "º habitante? ")
            leia(nomev[posicao])
            escreva("Qual a idade de " , nomev[posicao] , ", do habitante número " , posicao+1 , "? ")
            leia(idadev[posicao])
            se(posicao == 0){
                menor = idadev[posicao]
            }
            se(idadev[posicao] > maior){
                maior = idadev[posicao]
            }
            senao{
                se(menor < idadev[posicao]){
                    menor = idadev[posicao]
                }
            }
            soma=soma+idade
            quant=quant+1
            posicao=posicao+1
            escreva("quer cadastrar outro S/N ")
            leia(resp)
        }

 

Postado

@Walther Fernandes    então , você vai lá no vetor de idades e pesquisa , usando para isso dois loop começando de zero e indo atá o valor da variável posicao , e compara cada numero com os próximos e a cada numero igual você deleta o número e incrementa o contador , se você não puder deletar os números então antes de entrar nesses loop copie o vetor em outro vetor auxiliar . e imprime o resultado a cada volta do loop de dentro .

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