Projet calculatrice
Résolu
jeandchanel
Messages postés
136
Statut
Membre
-
jeandchanel Messages postés 136 Statut Membre -
jeandchanel Messages postés 136 Statut Membre -
Bonjour,
J'ai besoin de votre aide s'il vous plait.
Lorsque j'essaie d'executer ce programme, il m'affiche ce message d'erreur : " Erreur, choix non disponible !!! "
J'ai besoin de votre aide s'il vous plait.
Lorsque j'essaie d'executer ce programme, il m'affiche ce message d'erreur : " Erreur, choix non disponible !!! "
#include <stdio.h>
#include <stdlib.h>
#define TAILLEMAX 1000
int demanderMenu()
{
int userChoice;
printf("Quelle operation voulez-vous effectuer ?\n");
printf("1. Addition\n2. Multiplication\n3. Division\n4. Modulo\n");
do
{
printf("Votre choix ? ");
scanf("%d", &userChoice);
}while(userChoice < 1 || userChoice > 4);
return userChoice;
}
double addition(double tableau[], int tailleTab)
{
int i;
double somme = 0;
for(i = 0; i < tailleTab; i++)
somme += tableau[i];
return somme;
}
double multiplication(double tableau[], int tailleTab)
{
int i = 0;
double produit = 1;
for(i = 0; i < tailleTab; i++)
produit *= tableau[i];
return produit;
}
int demanderNombresAddition()
{
int i, tailleTab = 0;
double tableau[TAILLEMAX] = {};
printf("Combien de nombre voulez-vous utiliser ? ");
scanf("%d", &tailleTab);
for(i = 0; i < tailleTab; i++)
{
printf("Entrez le nombre N* %d ? ", i);
scanf("%lf", &tableau[i]);
}
addition(tableau, tailleTab);
printf("\n");
printf("La somme de ces %d nombres est de %.2lf\n", i, addition(tableau, tailleTab));
return tailleTab;
}
int demanderNombresMultiplication()
{
int i = 0, tailleTab = 0;
double tableau[TAILLEMAX] = {};
printf("Combien de nombres voulez-vous utiliser ? ");
scanf("%d", &tailleTab);
for(i = 0; i < tailleTab; i++)
{
printf("Entrez le nombre N* %d ? ", i);
scanf("%lf", &tableau[i]);
}
multiplication(tableau, tailleTab);
printf("\n");
printf("Le produit de ces %d nombres est de %.2lf\n", i, multiplication(tableau, tailleTab));
return tailleTab;
}
double division(double nombre1, double nombre2)
{
return nombre1 / nombre2;
}
int demanderNombresDivision()
{
int i = 0;
double nombre1 = 0, nombre2 = 1;
if(nombre2 != 0)
{
printf("Entrez un nombre ");
scanf("%lf", &nombre1);
printf("Entrez un autre nombre ");
scanf("%lf", &nombre2);
division(nombre1, nombre2);
printf("\n");
printf("Le resultat de la division de %.2lf par %.2lf est de %.2lf\n", nombre1, nombre2, division(nombre1, nombre2));
}else if(nombre2 == 0)
{
printf("Erreur, division par 0 !!! \n\n\n");
exit(0);
}
return 1;
}
int modulo(int nombre1, int nombre2)
{
return nombre1 % nombre2;
}
int demanderNombresModulo()
{
int i = 0;
int nombre1 = 0, nombre2 = 0;
printf("Entrez un nombre ");
scanf("%d", &nombre1);
printf("Entrez un autre nombre ");
scanf("%d", &nombre2);
modulo(nombre1, nombre2);
printf("\n");
printf("Le reste de la division de %d par %d est de %d\n", nombre1, nombre2, modulo(nombre1, nombre2));
return 1;
}
int main()
{
int userChoice = 0;
demanderMenu();
switch(userChoice)
{
case 1:
printf("Vous avez choisi l'Addition !\n");
demanderNombresAddition();
break;
case 2:
printf("Vous avez choisi la Multiplication !\n");
demanderNombresMultiplication();
break;
case 3:
printf("Vous avez choisi la Division !\n");
demanderNombresDivision();
break;
case 4:
printf("Vous avez choisi le Modulo !\n");
demanderNombresModulo();
break;
default :
printf("Erreur, choix non disponible !!! ");
break;
}
return 0;
}
A voir également:
- Projet calculatrice
- Filigrane projet - Guide
- Calculatrice gratuit - Télécharger - Calcul & Conversion
- Installer calculatrice - Télécharger - Calcul & Conversion
- Gant projet - Télécharger - Gestion de projets
- Ma-calculatrice - Télécharger - Calcul & Conversion
1 réponse
La fonction demanderMenu crée une nouvelle variable "userChoice", ce n'est pas la même variable avant ton switch().
https://www.commentcamarche.net/contents/122-langage-c-les-variables#portee-visibilite-des-variables
Du coup ton userChoice vaut toujours 0, et tu as le message d'erreur .
Remplace :
par
dans ton main()
https://www.commentcamarche.net/contents/122-langage-c-les-variables#portee-visibilite-des-variables
Du coup ton userChoice vaut toujours 0, et tu as le message d'erreur .
Remplace :
int userChoice = 0;
demanderMenu();
par
int userChoice = demanderMenu();
dans ton main()
Grand merci, ça marche comme sur des roulettes !!!