Bonjour ou bonsoir, c'est selon.
Voilà, je suis, comme qui dirait, débutant dans l'apprentissage du C/C++. Et j'ai un problème (nan sans blague?).
En fait, voilà mon code (j'ai pas précisé il s'agit d'une caltos en mode console):
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
long ChoixMenu=0;
printf ("--CALCULATRICE--\n\n");
printf ("1. Addition\n");
printf ("2. Soustraction\n");
printf ("3. Multiplication\n");
printf ("4. Division\n\n");
printf ("Veuillez selectionner votre choix: \n");
scanf ("%ld", &ChoixMenu);
printf ("\n");
double Nombre1=0;
double Nombre2=0;
long Resultat=0;
switch (ChoixMenu)
{case 1:
printf ("Veuillez entrer le premier nombre: \n");
scanf ("%lf", &Nombre1);
printf ("Veuillez entrer le deuxieme nombre: \n");
scanf ("%lf", &Nombre2);
Resultat = Nombre1 + Nombre2;
printf ("Le resultat est donc: \n%lf + %lf = %ld \n", Nombre1, Nombre2, Resultat);
break;
case 2:
printf ("Veuillez entrer le premier nombre: \n");
scanf ("%lf", &Nombre1);
printf ("Veuillez entrer le deuxieme nombre: \n");
scanf ("%lf", &Nombre2);
Resultat = Nombre1 - Nombre2;
printf ("Le resultat est donc: \n%lf - %lf = %ld \n", Nombre1, Nombre2, Resultat);
break;
case 3:
printf ("Veuillez entrer le premier nombre: \n");
scanf ("%lf", &Nombre1);
printf ("Veuillez entrer le deuxieme nombre: \n");
scanf ("%lf", &Nombre2);
Resultat = Nombre1 * Nombre2;
printf ("Le resultat est donc: \n%lf * %lf = %ld \n", Nombre1, Nombre2, Resultat);
break;
case 4:
printf ("Veuillez entrer le premier nombre: (format 0.00)\n");
scanf ("%lf", &Nombre1);
printf ("Veuillez entrer le deuxieme nombre: (format O.OO)\n");
scanf ("%lf", &Nombre2);
Resultat = Nombre1 / Nombre2;
printf ("Le resultat est donc: \n%lf / %lf = %ld \n", Nombre1, Nombre2, Resultat);
break;
default:
printf ("Votre choix n'est pas correct. \n");
break;
}
system("PAUSE");
return 0;
}
Déjà j'ai un souci au niveau de la déclaration de mes nombre1 et nombre2. Là comme vous le voyez, si je les déclare en tant que double ca passe sauf que dans mon résultat il m'affiche un truc du genre 2,00000 * 2,00000 = 4
Si j'essaye de les déclarer en tant que n'importe quoi d'autre, la ca marche pu du tout. Genre je veux 2*2, il m'affiche 0,4867467576784*0,0000000001 = 4,5980
Logique hin?
Enfin voila déjà c'est un premier souci. Ensuite j'aimerai permettre à l'utilisateur de revenir au Menu, sauf qu'on m'a dit que utiliser le goto c'était vraiment pas recommandé du tout. Donc je bloque.
Enfin une fois que j'aurai réussi ca, je pourrais m'attaquer à le faire en interface graphique, et la question que je me pose c'est est ce que mon code la, il va servir pour ca ou pas du tout ?
Merci à tous pour votre aide :)
Niko