Programme simple de calcul

Résolu/Fermé
Invadoria Messages postés 77 Date d'inscription jeudi 26 janvier 2012 Statut Membre Dernière intervention 14 décembre 2013 - 15 sept. 2013 à 13:48
Invadoria Messages postés 77 Date d'inscription jeudi 26 janvier 2012 Statut Membre Dernière intervention 14 décembre 2013 - 15 sept. 2013 à 17:09
Bonjour,

j'ai fait un programme qui doit calculer un résultat à partir de deux autres nombres, le problème, c'est que de base, j'obtiens toujours zéro et j'ai 3 erreur que je n'arrive pas à supprimer :


#include <stdio.h>
#include <stdlib.h>

int main()
{
//On déclare les trois variables//
double a, b, resultat;
//on exprime le resultat en fonction de a et de b
resultat=((a+b)*a-b*a)/a-a);
printf ("Entrez un reel : ");
do{
printf ("Entrez un reel a \n");
scanf("%lf", &a);
}
while(a==0)
scanf ("%lf", &a);
if (a==0)
printf ("Ce calcul n'est pas possible ! \n");
else printf (" Le calcul est possible");
printf ("Entrez un deuxieme reel : ");
scanf ("%lf", &b);
printf (" Le calcul donne %lf\n" , resultat);
return 0;
}


A voir également:

2 réponses

KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
15 sept. 2013 à 15:43
Tu dois toujours calculer ton résultat en fonction de a et b APRES avoir défini la valeur de a et b, sinon ça n'a aucun sens !
0
Invadoria Messages postés 77 Date d'inscription jeudi 26 janvier 2012 Statut Membre Dernière intervention 14 décembre 2013 4
15 sept. 2013 à 15:50
#include <stdio.h>
#include <stdlib.h>

int main()
{
double a, b, resultat;
printf ("Entrez un reel : ");
do{
printf ("Entrez un reel a \n");
scanf("%lf", &a);
}
while(a==0);
scanf ("%lf", &a);
if (a==0)
printf ("Ce calcul n'est pas possible ! \n");
else printf (" Le calcul est possible");
printf ("Entrez un deuxieme reel : ");
scanf ("%lf", &b);
resultat =((a+b)*a-b*a)/a-a);
printf (" Le calcul donne %lf\n" , resultat);
return 0;
}



Et maintenant ?
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
15 sept. 2013 à 16:00
Maintenant tu enlèves la parenthèse en trop que tu as sur
resultat =((a+b)*a-b*a)/a-a); 
et tu testes. Il y a deux ou trois coquilles à corriger mais globalement ça fera ce que tu veux.

Remarque : Il est tout à fait normal que tu obtiennes toujours 0, vu que c'est ce que tu lui demandes de calculer !!
0
Invadoria Messages postés 77 Date d'inscription jeudi 26 janvier 2012 Statut Membre Dernière intervention 14 décembre 2013 4
15 sept. 2013 à 16:41
Ce que je lui demande de calculer ?
0
KX Messages postés 16733 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 31 janvier 2024 3 015
15 sept. 2013 à 16:47
Peu importe la valeur de a (sauf 0) ou b, tu auras toujours ((a+b)*a-b*a)/a-a = 0
0
Invadoria Messages postés 77 Date d'inscription jeudi 26 janvier 2012 Statut Membre Dernière intervention 14 décembre 2013 4
15 sept. 2013 à 17:09
Il fonctionne
0