IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Programme débutant - homme ou femme


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 3
    Par défaut Programme débutant - homme ou femme
    Bonjour, je débute actuellement dans le langage C. On me demande de créer un programme qui demande si la personne est un homme ou une femme, demande sa taille pour calculer son poids idéal.
    J'ai fais un programme comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    #include <stdio.h>
    #include <stdlib.h>
     
    int main(int argc, char *argv[])
    {
      int taille = 0;
      int sexe = 0;
     
      printf ("Est-tu un homme ou une femme ? Si tu est un homme, tape 0, sinon tape 1");
     
      scanf("%d", &sexe);
     
      if("sexe = 0");
     
      {
        printf ("Tu est un homme,tu mesures combien en cm ?");
          scanf ("%d",&taille);
           printf("Ah ! Tu mesure donc %d cm !\n\n", taille);
           int PoidsIdealHomme = 0;
           PoidsIdealHomme = taille - 100 - ((taille - 150)/4) ;
    printf ("Ton Poids Ideal doit être de %d", PoidsIdealHomme) ;
      }
     
    if ("sexe = 1");
      {
        printf ("Tu est une femme, tu mesure combien cn cm ?");
        scanf ("%d",&taille);
        printf("Ah ! Tu mesure donc %d cm !\n\n", taille);
         int PoidsIdealFemme = 0;
         PoidsIdealFemme = taille -100 - ((taille - 150)/2.5);
         printf ("Ton Poids Ideal doit être de %d", PoidsIdealFemme) ;
      }
     
      return 0;
    }
    Mais cela ne marche pas, que je dise 0 ou 1 cela indique que c'est un homme.

    Que faire ?

    Merci de votre aide

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Chercheur d'emploi
    Inscrit en
    Septembre 2007
    Messages
    7 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Chercheur d'emploi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 486
    Par défaut
    Bonjour et bienvenue,

    Pourquoi as-tu mis des guillemets dans ta condition « if » ? Tu essaies au hasard ou est-ce que ça correspond à quelque chose que l'on t'a dit ou que tu as lu ?

    Essaie « sexe==0 » ou « sexe==1 », sans guillemet et avec deux signes « = ».

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 3
    Par défaut
    Merci Je viens de faire ce que tu a dis et ca ne marche pas, a la base le programme demandé était juste de demander la taille (peu importe le sexe) et cela donnait le poids idéal, et sa marché.

    La quand je lance mon programme, Il me demande de taper 0 ou 1, et peut importe ce que je tape, il me dis que je suis un homme, puis après la taille, finit par me dire le poids idéal et me dis après "Tu est une femme, tu mesures combien en cm?" ..

    Merci de ton aide

  4. #4
    Membre expérimenté Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 624
    Par défaut
    Pas de ; en fin de ligne car ça correspond à la fermeture du if.

    En gros, là ton if ne fait rien, il ne comporte pas de then ni de else.

    Tu as la même erreur un peu plus bas.

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 3
    Par défaut
    Ah l'erreur toute bete, merci

  6. #6
    Membre expérimenté Avatar de ManusDei
    Homme Profil pro
    vilain troll de l'UE
    Inscrit en
    Février 2010
    Messages
    1 624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : vilain troll de l'UE

    Informations forums :
    Inscription : Février 2010
    Messages : 1 624
    Par défaut
    Je te donne quelques explications complémentaires.

    Le if, en C, ressemble à ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if(cond){
    // ce qu'on fait si la condition est vraie.
    // c'est à dire 0, 1 ou plein de lignes de code.
    // oui, tu peux mettre aucune ligne de code dans le {}, c'est pas gênant, ça prend juste de la place sur ton écran.
    // non, ça ne ralentit pas le programme, oui, ça sert à rien, oui, parfois on le fait, avec des commentaires qui expliquent pourquoi.
    // en général, c'est parce qu'il y avait du code avant, ou parce que ça rend l'algo plus simple à suivre que de mettre !cond .
    };
    Le point virgule est optionnel, mais peut être mis.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (sexe==1)
        printf ("Tu est une femme, tu mesure combien cn cm ?");
        scanf ("%d",&taille);
        printf("Ah ! Tu mesure donc %d cm !\n\n", taille);
    Est une écriture valide, si (sexe = 1) le premier printf est exécuté, puis le scanf, et enfin le second printf.
    Si sexe est différent de 1, le premier printf n'est pas exécuté, mais le scanf et le second printf seront exécutés (le premier printf fait partie du if, mais seulement lui).

    Les { } permettent de définir des sections dans le code. C'est utilisé principalement pour les boucles, pour "coller" plusieurs lignes de code dans un if.

Discussions similaires

  1. Aide programme débutant en C++
    Par beufa59 dans le forum Débuter
    Réponses: 4
    Dernier message: 10/03/2009, 15h30
  2. Réponses: 5
    Dernier message: 01/05/2008, 22h56
  3. besoin de conseil création programme (débutante)
    Par kwakly dans le forum WinDev
    Réponses: 1
    Dernier message: 16/05/2007, 13h19
  4. Communication entre 2 programmes (débutant)
    Par mandaillou dans le forum C++
    Réponses: 43
    Dernier message: 12/12/2006, 21h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo