Programme C débutant

jft -  
Pilow Messages postés 410 Statut Membre -
Bonjour,
je commence tout juste et le c et je chercher à savoir si un entier est réel ou pas et je n'y arrive pas. si vous pouviez me rectifier ce serait gentil^^.
Voila donc le problème, quand je met 5 après avoir lancé le programme, il me met 5 est pair (lol)

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

int main(int argc, char *argv[])
{
//Déclaration des ressources
int a ;
//Saisie du nombre
printf("Entrer un nombre entier \n") ;
scanf("%d",&a) ;
if(a%2)==0)
{
printf("%d est un nombre pair",a);
}
else
{
printf("%d est un nombre impair",a);
}
}
system("PAUSE");
return 0 ;
}
Configuration: Windows 7
Firefox 3.5.3

4 réponses

  1. rom56 Messages postés 309 Statut Membre 88
     
    Bonjour,

    A part une erreur de parenthése, ton code m'a l'air correct, tu n'est pas obligé de mettre ==0, tu peux juste indiquer if(a%2) dans ce cas particulier (modulo 2) la valeur renvoyer est soit 0 (=false en language c) ou 1 (= true en language c)

    ça revient à :
    #include <math.h>
    #include <stdio.h>
    #include <stdlib.h>

    int main(int argc, char *argv[])
    {
    //Déclaration des ressources
    int a ;
    //Saisie du nombre
    printf("Entrer un nombre entier \n") ;
    scanf("%d",&a) ;
    // permet de vérifier le résultat avant de rentrer dans le test
    printf("Le modulo de %d %2 est :",a,(a%2));

    if(a%2)
    {
    printf("%d est un nombre pair",a);
    }
    else
    {
    printf("%d est un nombre impair",a);
    }
    }
    system("PAUSE");
    return 0 ;
    }

    tiens moi au courant!
    0
  2. loupius
     
    Tout à fait d'accord, mais il y a une accolade en trop et le '#include <math.h> qui ne sert à rien.
    Bonne continuation.
    0
  3. Pilow Messages postés 410 Statut Membre 71
     
    Ca serait pas
    if(a%2)
    {
    printf("%d est un nombre impair",a);
    }
    else
    {
    printf("%d est un nombre pair",a); 


    ? O_o

    If (a%2) revient à a%2 != 0 non ? If (a%2) existe quoi
    si le résultat d'un %2 est différent de 0 c'est 1 donc impair plutôt

    (Espere ne pas dire n'importe quoi)
    0
    1. rom56 Messages postés 309 Statut Membre 88
       
      Bien sur que si, tu as parfaitement raison, je me suis trompé :)
      0
  4. Pilow Messages postés 410 Statut Membre 71
     
    J'étais en plein doute, ça me rassure :P
    0