fox66
Messages postés2Date d'inscriptiondimanche 30 mai 2004StatutMembreDernière intervention 7 juin 2004
-
7 juin 2004 à 17:26
ymca2003
Messages postés2070Date d'inscriptionmardi 22 avril 2003StatutMembreDerniè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
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 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...)...
ymca2003
Messages postés2070Date d'inscriptionmardi 22 avril 2003StatutMembreDernière intervention 3 juillet 20067 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