Calculette
Résolu
damien7258
-
damien7258 -
damien7258 -
Bonjour,mon professeur ma demander de faire une mini calculatrice avec un apelle de fonction voila mon programme le compilateur me dit expression de switch non integrale mais que-ce-que cela veut dire si quelle qu'un connait la réponse merci d'avance voici mon programme.
#include<stdio.h>
#include <stdlib.h>
double mini(char signe[], double val1, double val2);
int main(void)
{
double val1=0, val2=0, resultat=0;
char signe[5];
signe[0]='+';
signe[1]='-';
signe[2]='*';
signe[3]='/';
signe[4]='/0';
printf (" tapez + pour une addition\n tapez - pour une soustraction\n tapez * pour une multiplication\n tapez / pour diviser\n tapez 0 pour quitter\n:" );
scanf ("%c", signe);
switch (signe)
{
case '+':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat= mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '-':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '*':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '/':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
default :
return 0;
}
system("PAUSE");
return 0;
}
double mini(char signe[], double val1, double val2)
{
double resultat=0;
if (signe=='+')
{
resultat=val1+val2;
return val1 + val2;
}
else if (signe=='-')
{
resultat=val1-val2;
return val1-val2;
}
else if (signe=='*')
{
resultat=val1*val2;
return val1*val2;
}
else if (signe=='/')
{
resultat=val1/val2;
return val1/val2;
}
}
#include<stdio.h>
#include <stdlib.h>
double mini(char signe[], double val1, double val2);
int main(void)
{
double val1=0, val2=0, resultat=0;
char signe[5];
signe[0]='+';
signe[1]='-';
signe[2]='*';
signe[3]='/';
signe[4]='/0';
printf (" tapez + pour une addition\n tapez - pour une soustraction\n tapez * pour une multiplication\n tapez / pour diviser\n tapez 0 pour quitter\n:" );
scanf ("%c", signe);
switch (signe)
{
case '+':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat= mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '-':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '*':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '/':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
default :
return 0;
}
system("PAUSE");
return 0;
}
double mini(char signe[], double val1, double val2)
{
double resultat=0;
if (signe=='+')
{
resultat=val1+val2;
return val1 + val2;
}
else if (signe=='-')
{
resultat=val1-val2;
return val1-val2;
}
else if (signe=='*')
{
resultat=val1*val2;
return val1*val2;
}
else if (signe=='/')
{
resultat=val1/val2;
return val1/val2;
}
}
A voir également:
- Mauricette calculette
- Calculette taux hcg - Télécharger - Santé & Bien-être
- Calculette gratuite - Télécharger - Calcul & Conversion
- Calculette sur mon téléphone - Télécharger - Calcul & Conversion
- Ma calculette mauricette ✓ - Forum calculatrices
- Racine carrée calculette iphone ✓ - Forum iPhone
5 réponses
Bonsoir damien7258,
déjà il te manque un } à la fin de ton pgr tout comme en d'autres endroits; essaies donc cela
#include<stdio.h>
#include<stdlib.h>
double mini(char signe[], double val1, double val2);
int main(void)
{
double val1=0, val2=0, resultat=0;
char signe[5];
signe[0]='+';
signe[1]='-';
signe[2]='*';
signe[3]='/';
signe[4]='/0';
printf (" tapez + pour une addition\n tapez - pour une soustraction\n tapez * pour une multiplication\n tapez / pour diviser\n tapez 0 pour quitter\n:" );
scanf ("%c", signe);
}
switch (signe)
{
case '+':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat= mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '-':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '*':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '/':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
default :
return 0;
}
{
system("PAUSE");
return 0;
}
double mini(char signe[], double val1, double val2)
{
double resultat=0;
if (signe=='+')
{
resultat=val1+val2;
return val1+val2;
}
else if (signe=='-')
{
resultat=val1-val2;
return val1-val2;
}
else if (signe=='*')
{
resultat=val1*val2;
return val1*val2;
}
else if (signe=='/')
{
resultat=val1/val2;
return val1/val2;
}
}
}
@+
elco
déjà il te manque un } à la fin de ton pgr tout comme en d'autres endroits; essaies donc cela
#include<stdio.h>
#include<stdlib.h>
double mini(char signe[], double val1, double val2);
int main(void)
{
double val1=0, val2=0, resultat=0;
char signe[5];
signe[0]='+';
signe[1]='-';
signe[2]='*';
signe[3]='/';
signe[4]='/0';
printf (" tapez + pour une addition\n tapez - pour une soustraction\n tapez * pour une multiplication\n tapez / pour diviser\n tapez 0 pour quitter\n:" );
scanf ("%c", signe);
}
switch (signe)
{
case '+':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat= mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '-':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '*':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
break;
case '/':printf("Entrer val1 et val2\n:");
scanf("%lf", &val1);
scanf("%lf", &val2);
resultat=mini(signe,val1,val2);
printf("resultat : %.2lf\n",resultat);
default :
return 0;
}
{
system("PAUSE");
return 0;
}
double mini(char signe[], double val1, double val2)
{
double resultat=0;
if (signe=='+')
{
resultat=val1+val2;
return val1+val2;
}
else if (signe=='-')
{
resultat=val1-val2;
return val1-val2;
}
else if (signe=='*')
{
resultat=val1*val2;
return val1*val2;
}
else if (signe=='/')
{
resultat=val1/val2;
return val1/val2;
}
}
}
@+
elco
Bonjour,
je suis trés content pour toi et ton prof sera surement trés fier aussi.
Ta logique étant cohérente, il est tt à fait normal que le respect de la syntaxe conduise au succès.
A ce propoos, ce serait bien si, dans un dernier msg que tu m'adresserais, tu cochais la case RESOLU... çà aide toutes les personnes qui comme toi, souhaitent avoir une réponse correcte et rapide à leur pb. Ainsi chacun peut, avant même de poster leur pb, savoir s'il n'a pas déjà été traité etRESOLU.
Merci de le faire et ce sera avec plaisir que l'on se penchera sur les pb de damien7258.
@+
elco
je suis trés content pour toi et ton prof sera surement trés fier aussi.
Ta logique étant cohérente, il est tt à fait normal que le respect de la syntaxe conduise au succès.
A ce propoos, ce serait bien si, dans un dernier msg que tu m'adresserais, tu cochais la case RESOLU... çà aide toutes les personnes qui comme toi, souhaitent avoir une réponse correcte et rapide à leur pb. Ainsi chacun peut, avant même de poster leur pb, savoir s'il n'a pas déjà été traité etRESOLU.
Merci de le faire et ce sera avec plaisir que l'on se penchera sur les pb de damien7258.
@+
elco
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question