Probleme éxécution programme en C.
Résolu/Fermé
jehutyy
Messages postés
51
Date d'inscription
lundi 5 septembre 2011
Statut
Membre
Dernière intervention
1 mai 2015
-
1 févr. 2012 à 13:53
Pitt911 - 1 févr. 2012 à 14:36
Pitt911 - 1 févr. 2012 à 14:36
A voir également:
- Probleme éxécution programme en C.
- Programme demarrage windows 10 - Guide
- Mettre en veille un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
- Forcer la fermeture d'un programme - Guide
- Désinstaller programme windows 10 - Guide
9 réponses
Utilisateur anonyme
1 févr. 2012 à 14:01
1 févr. 2012 à 14:01
Bonjour,
Essai d'enlever ton /n a ton scanf
et de le mettre a la ligne d'après comme ça :
scanf("%f", &c);
printf("/n%f, %f, %f", a, b, c);
Essai d'enlever ton /n a ton scanf
et de le mettre a la ligne d'après comme ça :
scanf("%f", &c);
printf("/n%f, %f, %f", a, b, c);
Utilisateur anonyme
1 févr. 2012 à 14:01
1 févr. 2012 à 14:01
Salut,
Ton prog t'affiche cette ligne : printf("%f, %f, %f", a, b, c); ?
Ton prog t'affiche cette ligne : printf("%f, %f, %f", a, b, c); ?
jehutyy
Messages postés
51
Date d'inscription
lundi 5 septembre 2011
Statut
Membre
Dernière intervention
1 mai 2015
1 févr. 2012 à 14:03
1 févr. 2012 à 14:03
@Migok: non il ne me l'affiche pas
@lou: je teste tout de suite.
@lou: je teste tout de suite.
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
1 févr. 2012 à 14:03
1 févr. 2012 à 14:03
Salut.
c'est quoi ton environnement de développement ?
à part le delta en int plutôt qu'en double, je ne vois rien.
Le programme ne fait plus rien où exactement ? après la saisi de c ?
le seul truc de différent que je voi c'est l' "\n" pour le scanf de c.
c'est quoi ton environnement de développement ?
à part le delta en int plutôt qu'en double, je ne vois rien.
Le programme ne fait plus rien où exactement ? après la saisi de c ?
le seul truc de différent que je voi c'est l' "\n" pour le scanf de c.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jehutyy
Messages postés
51
Date d'inscription
lundi 5 septembre 2011
Statut
Membre
Dernière intervention
1 mai 2015
1 févr. 2012 à 14:06
1 févr. 2012 à 14:06
En effet apres la saisi de a, b et c le programme ne fait plus rien.
La je viens de deplacer le "\n" le programme fonctionne mais m'affiche mes variable a 0 au lieu des valeurs que je rentre.
La je viens de deplacer le "\n" le programme fonctionne mais m'affiche mes variable a 0 au lieu des valeurs que je rentre.
Utilisateur anonyme
Modifié par lou270 le 1/02/2012 à 14:10
Modifié par lou270 le 1/02/2012 à 14:10
Pour entrer des variable double, il faut mettre%lf au scanf
jehutyy
Messages postés
51
Date d'inscription
lundi 5 septembre 2011
Statut
Membre
Dernière intervention
1 mai 2015
1 févr. 2012 à 14:11
1 févr. 2012 à 14:11
Merci, je viens de changer mes double a,b et c en float ça marche.
Et merci pour le "%lf". Le programme fonctionne.
Merci tout le monde.
Bonne continuation.
cordialement
jehutyy
Et merci pour le "%lf". Le programme fonctionne.
Merci tout le monde.
Bonne continuation.
cordialement
jehutyy
Salut,
Ton problème est qu'avec des double on ne mets pas %f mais %lf remplace tout t'es %f par %lf (lf pour long float).
Il faut les mettre aussi au printf.
Ton problème est qu'avec des double on ne mets pas %f mais %lf remplace tout t'es %f par %lf (lf pour long float).
Il faut les mettre aussi au printf.
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
1 févr. 2012 à 14:29
1 févr. 2012 à 14:29
je ne vois pas pourquoi il ne pourrais pas écrire ça. En plus ton conseil n'est pas forcément judicieux, déclarer les variable seulement lorsqu'on a besoin et dans un corps/bloc spécifique permet d'éviter certains bugs.
mais mettre le delta en int, c'est mauvais pour la résolution.
mais mettre le delta en int, c'est mauvais pour la résolution.
int main()
{
double a=0;
double b=0;
double c=0;
printf("entrez a\n");
scanf("%lf", &a);
printf("entrez b\n");
scanf("%lf", &b);
printf("entrez c\n");
scanf("%lf", &c);
// tu peux résumé c'est six ligne seulement 2 :
//printf(" Entre a b c");
//scanf("%lf%lf%lf",a,b,c)
printf("%lf, %lf, %lf", a, b, c);
delta=(b*b)-(4*a*c);
printf("le delta est %d\n", delta);
if(delta>0)
{
x1=(-b-sqrt(delta))/(2*a);
x2=(-X2+sqrt(delta))/(2*a);
printf("%lf, %lf", x1,x2);
}
if(delta==0)
{
x1=(-b)/(2*a);
printf("%lf", x1);
}
if(delta<0) printf("pas de solutions");
return 0;
}
Ps : désolé mais je m'étais planté dans le commentaire que j'ai supprimé
{
double a=0;
double b=0;
double c=0;
printf("entrez a\n");
scanf("%lf", &a);
printf("entrez b\n");
scanf("%lf", &b);
printf("entrez c\n");
scanf("%lf", &c);
// tu peux résumé c'est six ligne seulement 2 :
//printf(" Entre a b c");
//scanf("%lf%lf%lf",a,b,c)
printf("%lf, %lf, %lf", a, b, c);
delta=(b*b)-(4*a*c);
printf("le delta est %d\n", delta);
if(delta>0)
{
x1=(-b-sqrt(delta))/(2*a);
x2=(-X2+sqrt(delta))/(2*a);
printf("%lf, %lf", x1,x2);
}
if(delta==0)
{
x1=(-b)/(2*a);
printf("%lf", x1);
}
if(delta<0) printf("pas de solutions");
return 0;
}
Ps : désolé mais je m'étais planté dans le commentaire que j'ai supprimé