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 :

Mon premier programme


Sujet :

C

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut Mon premier programme
    bonjour à tous,
    je vient d'entrer en école d'ingénieur et j'ai recu mai premier cours d'info la semaine dernière, je me suis motiver pour essayer d'appliquer ce que l'on m'avait enseigné mais je n'y arrive pas. Pouriez vous m'aider à trouver pourquoi mon programme ne fonctionne pas.merci

    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
     
    #include <stdio.h>
    #include <conio.h>
    int main (void)
    {
    int x,y,z;
    printf("Calcul de salaire en fonction du revenu par heure\n");
    printf("Donnez votre revenu par heure en euros: \n");
    scanf("%f, &x");
    do
    {
    printf("Donnez votre nombre d'heures de travail par jour: \n");
    scanf("%f, &y");
    }
    while((y>0)&&(y<=24));
    do
    {
    printf("Donnez votre nombre de jours de travail par mois: \n");
    scanf("%f, &z");
    }
    while((z>0)&&(z<=31));  
    printf("Votre salaire mensuel est donc %Lf sur la base de %f euros de l'heure et de %f heures de travail par mois\n", x*y*z, x, y*z);
    getch();
    return 1;
    }
    j'utilise le freeware devc++ pr créer le programme.
    merci

  2. #2
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Salut

    Ton programme est en C, ici ce n'est pas le bon forum. A moins que tu ne fasses du mauvais C++

    Pouriez vous m'aider à trouver pourquoi mon programme ne fonctionne pas
    La première chose à faire serait de donner un peu plus de précisions, nous ne sommes pas des compilateurs / debuggers...

  3. #3
    Membre averti
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 363
    Points : 353
    Points
    353
    Par défaut
    Dans tes boucles do while, à chaque scanf tu écrase le contenu du scanf précédent. Donc tes boucles servent à rien autant faire 3 scanf à la suite sans les boucles. Ce qui marche pas c'est que ca t'affiche pas le bon résultat c'est ca?

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    euh je penssai être en c++, dsl
    ce qui ne marche pas c'est que quand je lance l'appli après l'avoir compilé elle plante, et si je j'utilise cette version, le résultat est tjs 0.0000 voilà excusé mon manque de préssision mais comme je vous l'ai di c'est la toute première fois que je fais ca.

    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
     
    #include <stdio.h>
    #include <conio.h>
    int main (void)
    {
    int x,y,z;
    printf("Calcul de salaire en fonction du revenu par heure\n");
    printf("Donnez votre revenu par heure en euros: \n");
    scanf("%f, &x");
    do
    {
    printf("Donnez votre nombre d'heures de travail par jour: \n");
    scanf("%f, &y");
    }
    while((y>0)&&(y<=24));
    do
    {
    printf("Donnez votre nombre de jours de travail par mois: \n");
    scanf("%f, &z");
    }
    while((z>0)&&(z<=31));  
    printf("Votre salaire mensuel est donc de %Lf euros.\n", x*y*z);
    getch();
    return 1;
    }

  5. #5
    Membre averti
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 363
    Points : 353
    Points
    353
    Par défaut
    C'est tes scanf qui sont pas bon.
    scanf("%.f",&x);
    et non pas
    scanf("%.f,&x");

    J'avais pas fait attention sur la premiere version

  6. #6
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Le tout est de savoir si tu veux faire du C ou du C++. Dans le premier cas on déplacera ton message vers le forum approprié, dans le second je te conseille de recommencer avec un vrai cours de C++.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    merci car maintenant le prgm ne plante plus mais le résultat est complètement faux, une abérassion ac en plus beaucoup de chiffres inutiles un peu partout ds la phrase final.Et il y a encore un autre prblm, j'ai préssiser ac les boucle do while que certaines valeur était interdites mais cela ne fonctionne pas puisque je peu rentrer 25h par jr .merci encore pr votre aide. et je précise bien que je veu faire du C++ et que je ne connais pas la différence entre les 2.
    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
     
    #include <stdio.h>
    #include <conio.h>
    int main (void)
    {
    int x,y,z;
    printf("Calcul de salaire en fonction du revenu par heure\n");
    printf("Donnez votre revenu par heure en euros: \n");
    scanf("%f", &x);
    do
    {
    printf("Donnez votre nombre d'heures de travail par jour: \n");
    scanf("%f", &y);
    }
    while((y>0)&&(y<=24));
    do
    {
    printf("Donnez votre nombre de jour de travail par moi: \n");
    scanf("%f", &z);
    }
    while((z>0)&&(z<=31));  
    printf("Votre salaire mensuel est donc %Lf sur la base de %f euros de l'heure et de %f heures de travail par mois\n", x*y*z, x, y*z);
    getch();
    return 1;
    }

  8. #8
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    je précise bien que je veu faire du C++ et que je ne connais pas la différence entre les 2
    http://c.developpez.com/cours/#cours-cpp

  9. #9
    Membre averti
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 363
    Points : 353
    Points
    353
    Par défaut
    Citation Envoyé par brisso
    merci car maintenant le prgm ne plante plus mais le résultat est complètement faux, une abérassion ac en plus beaucoup de chiffres inutiles un peu partout ds la phrase final.Et il y a encore un autre prblm, j'ai préssiser ac les boucle do while que certaines valeur était interdites mais cela ne fonctionne pas puisque je peu rentrer 25h par jr .merci encore pr votre aide. et je précise bien que je veu faire du C++ et que je ne connais pas la différence entre les 2.
    Pour ton prog la si tu veux le passer en c++, il faut que tu vire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include <stdio.h> et #include <conio.h>.
    Tu les remplace par Tu ajoute aussi la ligne Et tout tes printf tu les remplace par des cout.
    Exemple

    En C:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    printf("Calcul de salaire en fonction du revenu par heure\n");
    En C++ ca donne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cout << "Calcul de salaire en fonction du revenu par heure" << endl;//Le endl remplace le \n de retour à la ligne du C
    Pour afficher ce que contient une variable:
    Pour afficher du texte et une variable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cout << "ton texte: " << variable << endl;
    En ce qui concerne la saisie clavier ton:
    du C

    est remplacé par
    en C++

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    oula merci pr tte ces info mais alors là je ne comprend plus rien
    ds mon école on m'a bien apris ac printf et les bibliotech que j'ai ouverte.Dc finalement je ne vais pas changer mon code vu ke ca ne correspondra pus à ce ke j'apprend.Mais on nous avais pourtant di que ce qu'on aprennai était du C++ dc je suis un peu perdu.
    En tt cas j'est réessayé de faire mon programme a partir du début et je pense que je doi manqué de connaissances pr pouvoir faire un programme mm aussi simple que celui là.
    En tt cas ca commence à me prendre la tête parce que je n'aime pas entreprendre quelque chosqe que je ne fini pas dc help me ancore un petit peu svp....merci a ts

  11. #11
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    Tu ajoute aussi la ligne
    Truc à ne pas faire par contre.

  12. #12
    Membre averti
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 363
    Points : 353
    Points
    353
    Par défaut
    Citation Envoyé par loufoque
    Truc à ne pas faire par contre.
    Pourquoi?
    Tu as peur d'avoir un code portable? lol

  13. #13
    Membre averti
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 363
    Points : 353
    Points
    353
    Par défaut
    Bon regarde ton code

    C'est un peu normal que quand tu lui met 25 ca fasse ne te redemande pas de saisir un chiffre.
    Essaie de mettre un chiffre comprit entre 0 et 24 et tu verra ca va te redemander de saisir un chiffre.
    Tu as un probleme de logique la, ta condition du do while est fausse.
    Idem pour le do while du z.

  14. #14
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    Tu as peur d'avoir un code portable?
    Quel rapport ?

  15. #15
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    justemment, je ne comprend pas mm quand je tape 20 par exemple il me permet de continué, je me suis dit kan mettant || ca pourrait changé quelque chose mes ds ce cas là quelque soit la valeur que j'entre je ne peu continué.

  16. #16
    Membre averti
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 363
    Points : 353
    Points
    353
    Par défaut
    Essaie avec Et dit moi si je dis n'importe quoi mais je crois que #include <iostream.h> c'est pas la bibliotheque officielle de C++ mais #include <iostream>. Et si tu mets pas le using namspace std tu dois mettre std::cout et std::cout. Je vois pas ce que ca a de genant de le mettre.

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    merci mais cela ne fonctionne pas, il me repose la mm question kelke soit la valeur indiquée.Je ne comprend vraiment plus.

  18. #18
    Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Septembre 2006
    Messages : 37
    Points : 64
    Points
    64
    Par défaut
    L'avantage de std::cin, c'est que les types sont vérifiés.

    Dans ton format de scanf, tu utilises %f et des pointeurs sur des entiers -> boum !

  19. #19
    Membre régulier
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 186
    Points : 98
    Points
    98
    Par défaut
    dsl mais je ne comprend pas du tout de quoi vs me parlez...

  20. #20
    Membre averti
    Profil pro
    Responsable technique
    Inscrit en
    Février 2006
    Messages
    363
    Détails du profil
    Informations personnelles :
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Responsable technique

    Informations forums :
    Inscription : Février 2006
    Messages : 363
    Points : 353
    Points
    353
    Par défaut
    Citation Envoyé par brisso
    dsl mais je ne comprend pas du tout de quoi vs me parlez...
    Ben tu sais ce qu'il te reste a faire-> lancer ton debugguer preferé

Discussions similaires

  1. mon premier programme en c# :-)
    Par am@123 dans le forum Framework .NET
    Réponses: 4
    Dernier message: 13/10/2006, 14h32
  2. mon premier programme j2me
    Par adilo dans le forum Java ME
    Réponses: 1
    Dernier message: 14/09/2006, 08h43
  3. [JDOM] Mon premier programme java-xml
    Par adilo dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 12/07/2006, 13h12
  4. [Language] Aide sur mon premier programme Java?
    Par hash2zo dans le forum Langage
    Réponses: 15
    Dernier message: 27/09/2005, 19h26
  5. [Débutant] Mon premier programme: rien ne va...
    Par vincent0 dans le forum OpenGL
    Réponses: 10
    Dernier message: 02/08/2005, 13h59

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