Jump to content

Ajuda na questão


Gato_mestre10

Recommended Posts

Faça um programa que receba do usuário a idade, em anos, e a altura, em metros, de 10 estudantes do IFCE Campus Tianguá. O seu programa deve calcular e mostrar: (2,5 pontos).
• A quantidade de alunos menores de 18 anos;
• A média da idade dos alunos menores de 18 anos;

#include <stdio.h>

int idade, menoresde18, idadelimite;

float altura, media;

int main()
{
    for (int i=1; i<=10; i++){
        printf("Digite a idade do aluno:");
        scanf("%d ", &idade);
        if(idade < 18){
        menoresde18 = idade;
        media = idade/2;
        }
    }
    
    
    printf("A quantidade de alunos menores de 18 anos é: %d", menoresde18);
    printf("\n");
    printf("A média da idade dos alunos menores de 18 anos: %2.f", media);
    
    return 0;
}

Onde eu to errando ?

  • Agradecer 1
Link to comment
Share on other sites

idade é a idade lida (óbvio, né?), mas você quer a quantidade (e, portanto, quer contar) quantos são menores de 18. E também quer acumular (somar) as idades dos menores de 18 para calcular a média depois (que precisa da contagem). Eis a modificação, para seu estudo:
 

#include <stdio.h>

int main( void )
{
  // Dica: Evite criar objetos globais
  int idade;
  unsigned int quantidade;
  double soma;

  // Começamos com a soma e quantidade zeradas.
  soma = 0.0;
  quantidade = 0;

  for ( int i = 1; i <= 10; i++ )
  {
    printf ( "Digite a idade do aluno:" );
    scanf ( "%d", &idade );

    // Só acumula e conta a quantidade se a idade for < 18.
    if ( idade < 18 )
    {
      soma += idade;
      quantidade++;
    }
  }

  printf ( "\nA quantidade de alunos menores de 18 anos é: %u\n"
           "A média de idade dos menores de 18: %.1f\n",
           quantidade, soma / quantidade );

  return 0;
}

Esse exemplo tem alguns problemas:

1 - E se o usuário entrar com uma idade negativa ou 0?
2 - E se ele entrar com alguma coisa que não seja um número?

Veja se consegue tratar isso para o programinha ficar correto...

Edited by fredericopissarra
  • Agradecer 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...