Code C

ITACHI971 Messages postés 760 Date d'inscription   Statut Membre Dernière intervention   -  
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
j'ai un problème dans mon code C :

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

int main()
{
int resultat = 0, nombre1 = 0, nombre2 = 0, choix = 0;
printf("tapez sur 1 pour une addition puis ENTREE\n");
printf("tapez sur 2 pour une soustraction puis ENTREE\n");
printf("tapez sur 3 pour une multiplication puis ENTREE\n");
printf("tapez sur 4 pour une division puis ENTREE\n");
printf("tapez sur 5 pour fermer puis ENTREE\n");
printf("votre choix : ");
scanf("%d", &choix);
if(choix == 1)
{
int resultat = 0, nombre1 = 0, nombre2 = 0;
printf("faites votre addition :\n");
scanf("%d + %d", &nombre1, &nombre2);
resultat = nombre1 + nombre2;
printf("%d + %d = %d", nombre1, nombre2, resultat );
}
else if(choix == 2)
{
int resultat = 0, nombre1 = 0, nombre2 = 0;
printf("faites votre soustraction :\n");
scanf("%d - %d", &nombre1, &nombre2);
resultat = nombre1 - nombre2;
printf("%d - %d = %d", nombre1, nombre2, resultat );
}
else if(choix == 3)
{
int resultat = 0, nombre1 = 0, nombre2 = 0;
printf("faites votre multiplication :\n");
scanf("%f * %f", &nombre1, &nombre2);
resultat = nombre1 * nombre2;
printf("%d * %d = %d", nombre1, nombre2, resultat );
}
else if(choix == 4)
{
int resultat = 0, nombre1 = 0, nombre2 = 0;
printf("faites votre division :\n");
scanf("%f / %f", &nombre1, &nombre2);
resultat = nombre1 / nombre2;
printf("%d / %d = %d", nombre1, nombre2, resultat );
}
system("pause");



}

kan je tape 3 pour faire une multiplication, ben je tape ma multiplication mais c pas les bon nombres qui s'affichent
genre je fais 2*3
et ca me met 32.000000000 * 0 = 0
A voir également:

1 réponse

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Salut,

int resultat = 0, nombre1 = 0, nombre2 = 0;
printf("faites votre multiplication :\n");
scanf("%f * %f", &nombre1, &nombre2);

Attention, tu utilises scanf("%f") alors que tes variables sont des int.
D'où les erreurs par la suite.

Sinon, tu peux même faire plus propre comme code. En utilisant %c dans ton scanf pour récupérer le signe. Et après avec un simple switch sur l'opérateur, tu affiches les résultats.

Et enfin, n'oublie pas de traiter le cas où le diviseur est nul. Sinon, tu vas avoir des surprises.

Cdlt,
0