CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[C]Condition mal comprise

AzirFapII
AzirFapII
Niveau 8
10 janvier 2015 à 12:37:41
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
    int agePersonnage;
    scanf("Entrez votre age : %d", &agePersonnage);
    if (!(agePersonnage <= 0 || agePersonnage > 35))
        printf("Age invalide. Reesayez ! \n\n");
    else
        printf("Modifiez les cheveux de votre perso !\n\n");
    return 0;
}

Bonjour à tous, je ne comprends pas un truc en langage C.
Il s'agit de la combinaison de condition (!)
dans le programme ci dessus, n'importe quel nombre écrit m'affiche le printf du else.
Pourriez vous m'expliquer pourquoi ?
merci à vous :)

kernel[]
kernel[]
Niveau 10
10 janvier 2015 à 12:50:31

Salut,

Ton code est pas bon déjà,

scanf("Entrez votre age : %d", &agePersonnage);

Tu veux sûrement faire ça plutôt :

printf("Entre votre age : ");
scanf("%d", &agePersonnage);

Ensuite ta condition if (!(agePersonnage <= 0 || agePersonnage > 35))
Veut dire "si NON(agePersonnage est nul ou négatif, OU si agePersonnage est plus grand que 35) afficher "Age invalide" " ce qui donne :
"si agePersonnage est positif ET agePersonnage est inférieur à 35 : afficher Age Invalide" ce qui est sûrement pas ce que tu veux faire :noel:

AzirFapII
AzirFapII
Niveau 8
10 janvier 2015 à 21:34:07

ah ! oui merci j'ai corrigé et compris grâce à de la pratique ! :noel:

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment