Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
WesleyThiago Silva

Programação codeblocks

Recommended Posts

•Faça um algoritmo que receba a idade e a altura de várias pessoas, calcule e mostre a média das alturas daquelas com mais de 50 anos.

•Para encerrar a entrada de dados, digite uma idade menor ou igual a zero.

 

#include <stdio.h>
void main(void)
{
    int idade = 0;
    int altura = 0;
    float pessoas = 0;
    float medaltura = 0;
    while(idade > 50)
    {
        printf("\idade%d", idade);
        printf("\altura%d", altura);
        scanf("\altura%d/%fpessoas>50")
    }
}


 

Como devo dar continuidade para executar este programa?

Compartilhar este post


Link para o post
Compartilhar em outros sites

1 - Você determinar quantas pessoas vão ser armazenadas

2 - Você precisa de um plano de armazenamento, aconselho o uso de struct.   Exemplo:

   #define MAX_PESSOAS 5
   struct Pessoas
   {
    int idade;
    float altura;
   };
  Pessoas pessoa[MAX_PESSOAS];

 

3 - De acordo com seu código, você não recebeu os dados corretamente, o correto seria(seguindo o exemplo de cima):

//Armazenar na estrutura 'pessoa' acima e finalizar quando for MAX_PESSOAS = 5
for(int i = 0; i < MAX_PESSOAS; i++){
    printf("\nDigite a idade:");
    scanf("%d",&pessoa[i].idade);
    printf("\nDigite a altura:");
    scanf("%f",&pessoa[i].altura);
}

 

4 - Para mostrar as informações de acordo com a media, você só precisa determinar quando mostrar os abaixo da media e depois os acima da media, exemplo:

#define MEDIA_IDADE 50
//variveis
int divisor = 0;
float alturaTotal = 0.0;
float mediaAltura = 0.0;

//Obter todas alturas de pessoas com a idade acima da media
for(int i = 0; i < MAX_PESSOAS; i++){
   if(pessoa[i].idade > MEDIA_IDADE){
   alturaTotal+=pessoa[i].altura;
   divisor++;
   }
}
//Nosso divisor tambem funciona como contador, ele determina qual a quantidade
//de pessoas com idade acima da media.
if(divisor <= 0) printf("Nenhuma pessoa possui idade acima/igual a %d",MEDIA_IDADE);
else {
mediaAltura = alturaTotal/divisor;
printf("Media de altura das pessoas acima de %d anos : %f m", MEDIA_IDADE, mediaAltura);
}

 

 

    

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
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×