Resolution d'equation genre : 2*(3*5+9*pi)/2+3^6

Soyez le premier à donner votre avis sur cette source.

Vue 4 374 fois - Téléchargée 424 fois

Description

C'est fastidieux et pas très fiable de faire de l'analyse syntaxique, même si certain font des trucs pas mal : http://www.vbfrance.com/article.asp?Val=1193

Le mieux et de laisser faire ça au gestionnaire de base de données de µsoft (même si c'est pas fait pour ça).

Le fichier Dual.dat doit toujours exister, même si vous ne vous en servez pas pour stoker des constantes.

Source / Exemple :


zip...

Conclusion :


Dans mon prog la zone de txt du haut est un espèce d'historique.

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

cs_CanisLupus
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
4 -
<Olilefou>
exemples :

3 or 1 = -1 au lieu de 3
3 xor 1 = 0 au lieu de 2
3 and 2 = -1 au lieu de 2
Olilefou
Messages postés
29
Date d'inscription
mercredi 1 août 2001
Statut
Membre
Dernière intervention
9 décembre 2005
-
Normal, c'est des opérations sur les octets et pas sur les bits,
3=true, 1=true, donc 3 or 1 = true, true=-1, donc 3 or 1 = -1

Il y a quelques autres petites restrictions par rapport au VB (ex: Replace ne passe pas).
cs_CanisLupus
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
4 -
<Olilefou>
C un peu ce que je pensais aussi.

De toute, c quand même très bien. Ca évite de se casser le chou pour des expressions mathématiques de base.

Par ex, avec ton code, pas de problème avec le "bégaiement" de la barre d'espace. J'ai vu ici-même des codes qui plantaient si on faisait 2+ 5 (avec 2 espaces entre + et 5) ou avec -(-2+(-1)), sans parler de la gestion des parenthèses et priorités. Je m'étais aussi lancé dans un évaluateur en VB il y a un moment et je sais que c une prise de tête, en C/C++ c'est un peu + simple.

Pour finir, j'ai 2 questions :
- Le fichier dual.dat, je sais qu'on peut changer le nom, du moment qu'on le change dans le code aussi. On peut même le recréer avec le notepad. Mais son contenu doit apparemment rester le même. Ne pourrait-on pas y rajouter des lignes ou les modifier pour résoudre un peu plus d'expressions ? En fait, ce qui m'intrigue c comment ça peut fonctionner et si c'est vraiment portable ! Scuses, suis pas très balaise en µsoft.
- Tu bosses chez µsoft pour connaître ce truc ?

Cordialement
Olilefou
Messages postés
29
Date d'inscription
mercredi 1 août 2001
Statut
Membre
Dernière intervention
9 décembre 2005
-
Si tu connais les base de données et le SQL, ce code est évident.

Le fichier dual.dat simule une table de base de données. Il doit contenir 2 lignes, la premiere est le nom des 'constantes', la deuxieme est la valeur. Il doit y avoit au moins une colone pour que la 'table' retourne une réponse.

Non, je ne bosse pas pour bill, je suis a mon compte.
cs_CanisLupus
Messages postés
3758
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
4 -
Ben là, tu m'en bouches un coin.
Je pensais bien connaître SQL (Oracle, Sql Server,...) mais il est vrai que les bases de données, pour moi, ne sont que des récipients de données qu'on interroge avec SQL via ODBC ou autre et que j'ai plus l'habitude d'Oracle, dBase, Access, Informix.
Maintenant que tu le dis, ça me fait penser à une conversion d'une table en fichier texte ou à un fichier utilisé pour des mailings sous Word.
J'ai la honte de ne pas y avoir pensé avant !!!

Cordialement
Commenter la réponse de cs_Warning

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.