Pb avec scanf les valeurs ne sont pas lues
Résolu/Fermé
dark101
Messages postés
5
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
1 septembre 2007
-
29 août 2007 à 22:00
mamiemando Messages postés 33541 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 24 février 2025 - 2 sept. 2007 à 21:46
mamiemando Messages postés 33541 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 24 février 2025 - 2 sept. 2007 à 21:46
A voir également:
- Pb avec scanf les valeurs ne sont pas lues
- Whatsapp message lu mais pas bleu - Guide
- Faites afficher avec un fond coloré les cellules qui contiennent une valeur comprise entre 250 et 350. quel nombre est dessiné en surbrillance ? ✓ - Forum Excel
- Cette valeur ne correspond pas aux restrictions de validation des données pour cette cellule ✓ - Forum MacOS
- Messenger message distribué mais pas lu ✓ - Forum Facebook Messenger
- Une archive ne peut être lue que par une seule personne. ✓ - Forum Linux / Unix
8 réponses
mamiemando
Messages postés
33541
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
24 février 2025
7 828
31 août 2007 à 15:20
31 août 2007 à 15:20
Aucune idée chez moi ça fonctionne correctement.
Est-ce que tu peux essayer en utilisant des doubles (au lieu des long double) et en lisant avec "%lf" ?
Bonne chance
(mando@aldur) (~) $ gcc -W -Wall plop.c (mando@aldur) (~) $ ./a.out Calcul de moyenne Entrez le premier nombre : 5555555555 Entrez le deuxième nombre : 55588888 La valeur moyenne de 5555555555.000000 et de 55588888.000000 est 2805572221.500000.
Est-ce que tu peux essayer en utilisant des doubles (au lieu des long double) et en lisant avec "%lf" ?
Bonne chance
mamiemando
Messages postés
33541
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
24 février 2025
7 828
30 août 2007 à 00:18
30 août 2007 à 00:18
Quelques remarques pas très importantes
- Tu peux sous entendre le void dans int main(void)
- Evite les variables globales, x et y devraient simplement être déclarées dans le main
- A priori l'utilisation de long double est un peu abusive, tu peux te contenter de double dans la très grande majorité des cas.
Chez moi ce programme marche :
Ce qui donne :
Je t'avoue que dans ton code je ne vois pas d'erreur tu es sûr d'avoir recompilé ?
- Tu peux sous entendre le void dans int main(void)
- Evite les variables globales, x et y devraient simplement être déclarées dans le main
- A priori l'utilisation de long double est un peu abusive, tu peux te contenter de double dans la très grande majorité des cas.
Chez moi ce programme marche :
#include <stdio.h> int main(){ long double x ,y; printf("Calcul de moyenne\n"); printf("Entrez le premier nombre : "); scanf("%Lf", &x); printf("\nEntrez le deuxième nombre : "); scanf("%Lf", &y); printf("\nLa valeur moyenne de %Lf et de %Lf est %Lf.\n", x, y, (x+y)/2); return 0; }
Ce qui donne :
(mando@aldur) (~) $ gcc -W -Wall plop.c (mando@aldur) (~) $ ./a.out Calcul de moyenne Entrez le premier nombre : 5 Entrez le deuxième nombre : 7 La valeur moyenne de 5.000000 et de 7.000000 est 6.000000.
Je t'avoue que dans ton code je ne vois pas d'erreur tu es sûr d'avoir recompilé ?
dark101
Messages postés
5
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
1 septembre 2007
30 août 2007 à 08:32
30 août 2007 à 08:32
oui j'ai bien recompiler mais rien n'y fait même en prenant des variables locales. Ca vient peut etre du compilateur j'utilise dev c++
mamiemando
Messages postés
33541
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
24 février 2025
7 828
30 août 2007 à 09:55
30 août 2007 à 09:55
Ben dev C++ repose sur gcc et tu as bien vu que j'ai compilé avec gcc. C'est vraiment bizarre :s
Par contre tu as peut être une vieille version bugguée qui sait ? Tu es sûr de recompiler le bon fichier source et de lancer le bon exécutable ?
Bonne chance
Par contre tu as peut être une vieille version bugguée qui sait ? Tu es sûr de recompiler le bon fichier source et de lancer le bon exécutable ?
Bonne chance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
dark101
Messages postés
5
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
1 septembre 2007
31 août 2007 à 10:38
31 août 2007 à 10:38
oui je recompile le bon fichier , je lance lance le bon executable j'essaye de mettre a jour dev c++ -(version 4.9.9.2) et ce n'est pas mieux.
ca ne pourrait pas venir de la console en elle même ou d'application windws utilisé?
ca ne pourrait pas venir de la console en elle même ou d'application windws utilisé?
dark101
Messages postés
5
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
1 septembre 2007
31 août 2007 à 11:16
31 août 2007 à 11:16
nouvelle bizarrerie, si ca peut t'aider !
Calcul de moyenne
Entrez le premier nombre : 5555555555
Entrez le deuxiÞme nombre : 55588888
La valeur moyenne de 5555555555.000000 et de -2.000000 est 0.000000.
Appuyez sur une touche pour continuer...
Calcul de moyenne
Entrez le premier nombre : 5555555555
Entrez le deuxiÞme nombre : 55588888
La valeur moyenne de 5555555555.000000 et de -2.000000 est 0.000000.
Appuyez sur une touche pour continuer...
dark101
Messages postés
5
Date d'inscription
vendredi 19 novembre 2004
Statut
Membre
Dernière intervention
1 septembre 2007
1 sept. 2007 à 09:43
1 sept. 2007 à 09:43
ouui ca y est ! ca marche c'était bien à cause des long double, je comprend pas pourquoi mais ca marche! Merci beaucoup j'espere que je n'aurais jamais besoin des long double.
mamiemando
Messages postés
33541
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
24 février 2025
7 828
2 sept. 2007 à 21:46
2 sept. 2007 à 21:46
Ahaha bon ben c'est bon à savoir, ça marche sous linux mais pas windows. Rassure toi les long double ne servent en pratique jamais, les double sont suffisants dans la très grande majorité des cas. En tout cas c'est cool que ton problème soit résolu !
A bientôt
A bientôt