Fonctions mathematique

fox66 Messages postés 2 Date d'inscription dimanche 30 mai 2004 Statut Membre Dernière intervention 7 juin 2004 - 7 juin 2004 à 17:26
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 - 7 juin 2004 à 23:37
bonjour,

je suis debutant en C je dois ecrire un prog "verif" qui verifie
les etapes suivantes:
par exemple on a
S = (ac) + (bc) + (a(a'+cd))
1-le nbr de parentheses ouvrantes=nbr de parentheses fermantes
2-il faudrait pas que 2 operateurs se suivent (*+)
3-il faudrait pas que de var se suivent
(aa) faux, (a+b) vrai
4-il faudrait qu'il y est 6 charcteres au plus entre 2 parentheses (6 characteres)

si vous avez vu un truc ds le genre ou, si vous pouvez m'aidez je vous serez tres reconnaissant
merci

2 réponses

vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 12
7 juin 2004 à 18:06
rien de très compliqué, il suffit de bien choisir tes variables:
par exeple une qui contient le nombre de parenthèses ouvertes, et qui déclencehe une erreur quand ce nombre devient négatif, etr qui doit être nul à la fin
tu mets tout ca dans un switch:
si ta chaine est dans un char* s

readchar:
switch(*s)
{
case '(':
++nbpar;
break;
case ')':
--nbpar;
if(nbpar < 0)
//erreur
break;
}
s++;
goto readchar;

tu peux aussi créer une variable qui contient le type du dernier caractère (opérateur, var, nombre...)...
0
ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
7 juin 2004 à 23:37
je te conseille de rechercher parmis les source se raportant à des calculatrice (en tapant calculatrice dans la zone de recherche). Il y a pas mal d'exemple avec analyse d'expression mathématique
0