Je sais que ça n'a rien à faire ici, mais je ne savais pas où mettre ça vu que je ne veux pas parler de code.
J'aimerais comprendre comment marche un CAS, j'ai vraiment du mal a comprendre comment on peut faire du calcul formel ... et ça me soule !
Oui, quand j'ai dis CAS c'est vrai que c'était un peu trop éloigné, ce qui m'interesse, c surtout la gestion du calcul formel, comment mélanger les variables aux chiffres dans les algo en fait ... (je sais pas si je susi bien clair ... )
(je le fais en caml parce qu'en C c'est lourd...)
Ben tu codes une expression comme un arbre, style
type expression =
| Nombre of int
| Variable of string
| Somme of expression*expression
| Produit of expression*expression
...........
et tu simplifies par exemple
let rec simp = function
| Somme(Variable x, Variable y) as exp -> if x=y then Produit(Nombre 2, Variable x) else exp
| .................
(il y a une liste de motifs à établir)
Sur une Hp, une expression est représentée en interne comme une liste en notation polonaise inverse : 2x+3x est représenté
2 x * 3 x * +
Le Cas est capable de reconnaître les branches de l'arbre :
[2 x *] [3 x *] +
et d'appliquer des formules de simplification :
2 3 + x *
5 x *
Les droits inaliénables du troll :
1) le droit d'avoir raison
2) le droit d'être péremptoire
3) le droit de ne pas lire
4) le droit de ne pas répondre
5) le droit d'être de mauvaise foi
6) Autant pour moi / Faignant / Vivent Tintin et Milou
donc ta variable est en chaine de caractère ???
si tu le souhaites
à toi de voir...
Les droits inaliénables du troll :
1) le droit d'avoir raison
2) le droit d'être péremptoire
3) le droit de ne pas lire
4) le droit de ne pas répondre
5) le droit d'être de mauvaise foi
6) Autant pour moi / Faignant / Vivent Tintin et Milou
oki, merci, je vais méditer cela ..
nEUrOO Le 23/05/2003 à 18:21Edité par Boo le 23/05/2003 à 18:27 Kevin: comment les variables sont gérées sur Ti89/V200 ? Enfin, dans une expression ... je sais que c'est reconnais grace à type <= 0x1C mais, elles sont gérées en string ?
Les variables d'une lettre ont des tags dédiés, les autres sont codés sous forme de chaîne de caractères enfermée entre 2 octets nuls.
(désolé pour l'édition croisée à ton post)
Mais une lettre, comme X, qui a comme tag dédiée VAR_X_TAG, qui vaut 08, comment on le différencie de 8 ?
8 est codé 08 01 POSINT_TAG.
aRf, chui con, pkoi j'y ais pas pensé .. merci bcp Kevin !