Ir ao conteúdo

Posts recomendados

Postado

Olá amigos! Sou nova na programação e me atrapalho um pouco ainda. As vezes não enxergo o óbvio também.

Preciso resolver essa atividade, usei o que o professor ensinou, mas ainda não estou acertando. No código abaixo, o

sistema não diz qual a fase da vida o usuário se encontra. Vocês poderiam me ajudar? O que falta no código?

Desde já agradeço a ajuda de todos!

 

#include <stdio.h>
#include <stdlib.h>

 

int main() {
    
    int idade;
    
 printf ("Qual a sua idade?");
    scanf ("%d", idade);
    
             if( idade < 11 ); {
 printf("\n %d voce esta na infancia"); ;
}
if( idade >= 12 ); {
  printf("\n %d voce esta na adolescencia");
  } 
  if(idade >= 21 ) ;{
  printf("\n %d voce e Adulto"); 
}
  
  if 
  (idade > 59 ); {
  printf("\n %d voce e Idoso"); 
}

system("pause");
    return 0;
}

  • Curtir 1
Postado

esses ; depois da condição do IF nao deveriam estar aí, o certo é:

if (condição) {

     comandos;

}

e você está colocando:

if (condição); {

}

 

além disso tem dois ; no printf da condição if (idade < 11) e você deve usar idade <= 11, senão o programa vai ignorar o 11

  • Curtir 2
Postado

Primeiramente,

Seja bem vinda, Srta. @Ludmila A. R de Lima!

As funções condicionais IF e ELSE são complementares, se o programa analisa uma condição (IF 'alguma coisa'), o programa deve saber o que fazer caso a condição não seja atendida (ELSE 'outra coisa').

No caso do exercício em questão:

if idade <11

printf ("você está na infância");

else{

      if (Idade>=11)&&(idade <21)

      printf ("Você é adolescente");

      else{

              if (idade>=21)&&(idade<59)

              printf ("Você é adultero");   //hehehe//

              else

              printf ("Você é velho")

}}

 

Em casos com muitas comparações, é melhor utilizar a função SWITCH.

Lhe desejo sucesso!

  • Curtir 1
Postado

Olha em C++ eu faria assim, usaria um if aninhado, e não vários if's sequenciais. Eu poderia afunilar ainda mais esse código e deixar ele com poucas linhas no entanto fazendo a mesma função, mas pra quem tá iniciando é melhor não empurrar muita coisa, vai aprendendo aos poucos.

 

<incluiria as biblio>

using namespace std;

int main()

{

    int idade;

    cout << "Informe a sua idade > ";

    cin >> idade;

 

    if (idade < 11) {

         //msg 1

    } else if (idade >= 11) {

        //msg 2

    } else if (idade >= 20) {

        //msg 3

    } (etc...)

}

  • Curtir 2
Postado
49 minutos atrás, Ludmila A. R de Lima disse:

scanf ("%d", idade);

No scanf faltou usar o operador & na idade assim,

 

scanf("%d", &idade);

No código também tem alguns ; em lugares indevidos ou desnecessários.

 

Para esse tipo de exercício você pode usar else para testar os outros critérios e o operador && (E lógico),

 

#include <stdio.h>
#include <stdlib.h>

int main() {
    int idade;
    
    printf ("Qual a sua idade? ");
    scanf("%d", &idade);
    
    if(idade <= 11 )
        printf("\nvoce esta na infancia");
    else if(idade >= 12 && idade < 21)
        printf("\nvoce esta na adolescencia");
    else if(idade >= 21 && idade <= 59)
        printf("\nvoce e Adulto"); 
    else
        printf("\nvoce e Idoso"); 
    
    system("pause");
    return 0;
} 

 

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