30

le cosh est imposé quand on dérive f(x)=(e^x-1)/(e^x+1)
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

31

HIPPOPOTAME
a écrit : le cosh est imposé quand on dérive f(x)=(e^x-1)/(e^x+1)


[b]Non le tanh, le tanh, le tanh, je répète c''est le le tanh[b]
http://www.codeur.org - Portail communautaire du développement Français
http://www.codeur.org/~perso/ - TiPaintPlus, Electron ...
http://www.codeur.org/forum/ - Forum sur la programmation

32

a bon ? t'appelles ca 'imposé' ? moi, je dirais plutot conseillé.
Qui peut empêcher qqn de cacher une expression simple derrière une compliquée ?

33

HIPPOPOTAME
a écrit : Non!! ça c'est ce que croit un naïf utilisateur lambda qui ne sait pas s'en servir.

Ce que tu n'as pas compris, c'est que la philosophie du CAS de AMS est totalement différente de celle du CAS de la HP-49. TI essaye de faire de AMS une "boîte noire". HP essaye de faire de son CAS une "boîte d'outils", de laquelle il faut choisir les outils à utiliser. Personnellement, je pense que la stratégie de TI est la meilleure à long terme: les ordinateurs deviennent de plus en plus "intelligents", donc ils seront de plus en plus capables de résoudre ce genre de problèmes tous seuls. Comme on peut voir, ça marche déjà assez bien actuellement.
Sur hp:
commandes de simplifications basiques comme EXPAND, COLLECT, SIMPLIFY, DISTRIB
versus
commandes qui permettent de décider de l'orientation des calculs, comme TRIG qui transforme exp(ix) en cos(x)+isin(x), TSIMP qui fait l'inverse.

le court terme
versus le long terme.

Bon, maintenant que tu as défini "stratégie", je peux dire qu'un CAS est censé savoir quelle stratégie employer. Si les exp(ix) conviennent mieux, il devrait les utiliser. Si les cos(x)+i sin(x) conviennent mieux, il devrait les utiliser. Et tout ça en interne. En externe, il devrait présenter la forme la plus simple, donc ici exp(ix).
Sur les forums hp, *jamais* un débutant n'a de problème avec les flags. point barre.

Parce que tous ceux qui ont eu des problèmes avec les flags ont laissé tomber et sont partis chez TI. smile Voire chez Casio. grin
On a des algorithmes de simplification d'une expression polynomiale.
On a un formulaire de trigo.
On a des formules pour exp/ln. Ce sont des algorithmes et des formulaires indépendant les uns des autres.

Mais on peut utiliser le formulaire de trigo pour un calcul d'exponentielles si c'est avantageux! Pourquoi le CAS ne devrait-il pas faire ça?
>1. Qu'est-ce qu'une "question non trigonométrique"??? "dériver f(x)=(e^x-1)/(e^x+1)"

Qu'est-ce qu'il y a de "non trigonométrique" ici? On demande de dériver, c'est tout. Donc on dérive de la manière qui convient le plus. Si on reconnaît le tanh(x/2), pourquoi ne pas l'utiliser? Si on ne le reconnaît pas, mais qu'on tombe sur un résultat qu'on reconnaît comme étant 1/(2cosh²(x/2)) (je n'ai pas mis sech pour éviter une autre longue discussion sur le sech grin), pourquoi ne pas le mettre? Tous mes professeurs ont toujours jugé le meilleur élève comme étant celui qui reconnaît le plus de simplifications possible.
La réponse trigonométrique n'est pas la plus simple : cosh est une fonction plus complexe que exp.

Mais pas plus complexe qu'une somme de exp.
Le choix d'introduire de la trigonométrie ne peut être fait que par un homme, un Cas ne peut pas juger de la pertinence de ce choix. Dans plus de 50% des cas, ce ne sera pas pertinent, comme pour prodige-tahoor.

Je n'ai aucune idée d'où tu sors ton "plus de 50% des cas". Le seul cas où ce n'est pas pertinent, c'est si l'utilisateur n'a pas vu les cosh.
Celui qui me corrige pourrait s'il est de mauvais poil sanctionner l'emploi d'un cosh dans cette question.

Je ne vois pas pourquoi. On attend des réponses simplifiées au maximum. Si on laisse des exponentielles, ce n'est pas simplifié au maximum.
Et il aurait raison.

Non.
HIPPOPOTAME
a écrit : le cosh est imposé quand on dérive f(x)=(e^x-1)/(e^x+1)

Il n'est pas imposé puisqu'il y a expand qui redonne des exponentielles.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

34

Ce que tu n'as pas compris, c'est que la philosophie du CAS de AMS est totalement différente de celle du CAS de la HP-49.

t'inquiète ça je l'ai compris depuis longtempsgringrin
TI essaye de faire de AMS une "boîte noire". HP essaye de faire de son CAS une "boîte d'outils", de laquelle il faut choisir les outils à utiliser. Personnellement, je pense que la stratégie de TI est la meilleure à long terme:

La description est juste. Et la stratégie de ti est certainement bien meilleure commercialement, c'est plus attirant et plus pratique pour le débutant, de même qu'un windows est plus attirant qu'un linux.
Mais bon dès qu'on se met à gratter un peu, on sent les limitations. Sur ti il ne me parait pas très réaliste de faire des programmes de calcul formel en basic (je me trompe?). Ne serait ce que parce que la simplification automatique bousille tout. Sur Hp c'est parfaitement possible.
les ordinateurs deviennent de plus en plus "intelligents", donc ils seront de plus en plus capables de résoudre ce genre de problèmes tous seuls. Comme on peut voir, ça marche déjà assez bien actuellement.

grin Remets les pieds sur terre! C'est un microprocesseur 68k, pas un "ordinateur qui de nos jours devient de plus en plus intelligent". grin
Bon, maintenant que tu as défini "stratégie", je peux dire qu'un CAS est censé savoir quelle stratégie employer. Si les exp(ix) conviennent mieux, il devrait les utiliser. Si les cos(x)+i sin(x) conviennent mieux, il devrait les utiliser. Et tout ça en interne.

Evidemment.
Le Cas peut bien faire la cuisine qu'il veut en interne, l'utilisateur s'en fout.
En externe, il devrait présenter la forme la plus simple, donc ici exp(ix).

Non. exp(ix) est parfois la réponse la plus simple (=la plus adaptée au problème), parfois pas.
Ce que tu ne veux pas comprendre, c'est que le Cas n'est pas capable de deviner le contexte de la question.
Parce que tous ceux qui ont eu des problèmes avec les flags ont laissé tomber et sont partis chez TI. Voire chez Casio.

Rêve...

(D'après ce que j'ai pu constater, un débutant ne connaît tout simplement pas les flags, ou ne s'amuse pas à y toucher. Les flags par défaut sont bien réglés pour les débutants. Donc pas de problème, pas besoin d'y toucher)
Mais on peut utiliser le formulaire de trigo pour un calcul d'exponentielles si c'est avantageux! Pourquoi le CAS ne devrait-il pas faire ça?

Mon petit doigt me dit que ce n'est pas avantageux. Reconnaitre des motifs pour appliquer des formules de trigo est infiniment plus complexe que développer+réduire un polynôme en exp(x).
Mais si le cas trouve que c'est plus avantageux, qu'il le fasse. En *interne*. Sans polluer la réponse.
>1. Qu'est-ce qu'une "question non trigonométrique"???
"dériver f(x)=(e^x-1)/(e^x+1)"
Qu'est-ce qu'il y a de "non trigonométrique" ici?

Qu'est ce qu'il y a de trigonométrique?
Il n'y a pas de cos, sin, tan, cosh, sinh, tanh, sec, cosech, .....
Donc ce n'est pas trigonométrique, point.
On demande de dériver, c'est tout.

Tu l'as dit : on demande de dériver, et c'est tout!
Donc on dérive de la manière qui convient le plus.

Il n'y a grosso modo qu'une manière de dériver. Mais de toute façon, le problème ne concerne pas la dérivation mais la simplification.
Si on reconnaît le tanh(x/2), pourquoi ne pas l'utiliser? Si on ne le reconnaît pas, mais qu'on tombe sur un résultat qu'on reconnaît comme étant 1/(2cosh²(x/2)) (je n'ai pas mis sech pour éviter une autre longue discussion sur le sech ), pourquoi ne pas le mettre?

Si on reconnaît le tanh(x/2), et que on, c'est à dire l'utilisateur, juge qu'une telle écriture est judicieuse, alors on indique au Cas d'employer une sensibilité trigonométrique.
Mais pas plus complexe qu'une somme de exp.

Mais parfois plus pertinente, parfois moins pertinente. Le Cas n'en sais rien. Dans le doute s'abstenir.
Je n'ai aucune idée d'où tu sors ton "plus de 50% des cas".

C'est sans doute bien plus de 50% en France, et bien moins aux Usa.
Le seul cas où ce n'est pas pertinent, c'est si l'utilisateur n'a pas vu les cosh.

Non.
Je ne vois pas pourquoi. On attend des réponses simplifiées au maximum. Si on laisse des exponentielles, ce n'est pas simplifié au maximum.

Dans la plupart des cas, si.
Il n'est pas imposé puisqu'il y a expand qui redonne des exponentielles.

D'accord, il n'est pas imposé.
Il faut taper une deuxième commande par dessus la première. Soit 6 lettres et deux parenthèses.
Sauf si on utilise Automachinchose qui ferme les parenthèses
L'ergonomie et l'efficacité sur tiroll
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

35

HIPPOPOTAME
a écrit : Mais bon dès qu'on se met à gratter un peu, on sent les limitations. Sur ti il ne me parait pas très réaliste de faire des programmes de calcul formel en basic (je me trompe?).

On peut le faire en de certaines limites...
Ne serait ce que parce que la simplification automatique bousille tout.

... mais en effet le C est souvent plus pratique parce qu'on peut éviter la simplification automatique. Mais en composant les tokens à la main. Si on utilise push_sum et compagnie, AMS utilisera automatiquement push_internal_simplify là aussi.
grin Remets les pieds sur terre! C'est un microprocesseur 68k, pas un "ordinateur qui de nos jours devient de plus en plus intelligent". grin

Ce qui rend les ordinateurs de plus en plus "intelligents", ce sont surtout des améliorations au niveau algorithmique, pas seulement la puissance pure.
Rêve...
(D'après ce que j'ai pu constater, un débutant ne connaît tout simplement pas les flags, ou ne s'amuse pas à y toucher. Les flags par défaut sont bien réglés pour les débutants. Donc pas de problème, pas besoin d'y toucher)

Sauf quand la HP-49 refuse de lui répondre parce que les flags ne sont pas bien mis... Par exemple, j'ai lu des personnes se plaindre que les flags par défaut de la HP-49 sont l'équivalent du mode EXACT, ce qui veut souvent dire "pas de réponse". Sur TI-89, on est normalement en AUTO: exact quand c'est possible, approché sinon.
Qu'est ce qu'il y a de trigonométrique?
Il n'y a pas de cos, sin, tan, cosh, sinh, tanh, sec, cosech, ..... Donc ce n'est pas trigonométrique, point.

Ce n'est pas une raison de ne pas donner une réponse trigonométrique si c'est la plus adaptée.
Il n'y a grosso modo qu'une manière de dériver.

Faux. Il y a souvent 2 solutions:
* simplifier, puis dériver (on convertit en tanh, puis on dérive)
* dériver, puis simplifier (on dérive, puis on convertit en cosh ou sech)
et ici, il y a une troisième: dériver sans simplifier, qui est celle que tu sembles préférer ici.
Mais parfois plus pertinente, parfois moins pertinente. Le Cas n'en sais rien.

Je ne vois pas en quoi ce ne serait pas "pertinent".
Dans le doute s'abstenir.

Dans le doûte, simplifier au maximum. Si on veut autre chose, on utilise expand.
C'est sans doute bien plus de 50% en France, et bien moins aux Usa.

La France n'est pas le centre du monde. Il y a nettement plus de personnes aux USA qu'en France. Donc ton pourcentage est faux.
Dans la plupart des cas, si.

Simplifier au maximum implique mettre des cosh quand ça rend l'expression plus courte.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

36

... mais en effet le C est souvent plus pratique parce qu'on peut éviter la simplification automatique. Mais en composant les tokens à la main. Si on utilise push_sum et compagnie, AMS utilisera automatiquement push_internal_simplify là aussi.

Il y a donc moyen de faire quelque chose.
Mais bon, c'est inutilisable en période normale d'utilisation du Cas (en DS) sauf à avoir un compilateur on-calc. et de toute façon ce n'est pas pratique.
Ce qui rend les ordinateurs de plus en plus "intelligents", ce sont surtout des améliorations au niveau algorithmique, pas seulement la puissance pure.

moui bofroll. La puissance autant que la mémoire disponible sont des limitations incontournables. On n'ira pas faire tourner un algo "intelligent" dernier cri sur un vieil Amstrad d'il y a 15 ans.
De toute façon le Cas Ti n'évolue pas, alors la question est réglée.
Sauf quand la HP-49 refuse de lui répondre parce que les flags ne sont pas bien mis...

La Hp ne refuse jamais de répondre. Elle propose parfois un petit pop-up, par exemple "voulez vous passer en mode complexe?", quand c'est utile.
Par exemple, j'ai lu des personnes se plaindre que les flags par défaut de la HP-49 sont l'équivalent du mode EXACT, ce qui veut souvent dire "pas de réponse".

Elle ne donne pas "pas de réponse". Elle renvoie une réponse exacte.
Si ces personnes sont trop faignantes pour ouvrir le manuel et faire un ->NUM, tant pis pour elles.
Sur TI-89, on est normalement en AUTO: exact quand c'est possible, approché sinon.

D'où l'anarchie dans les résultats : on ne sait pas si c'est juste ou approché.
>>>Qu'est ce qu'il y a de trigonométrique?
Il n'y a pas de cos, sin, tan, cosh, sinh, tanh, sec, cosech, .....
Donc ce n'est pas trigonométrique, point.
Ce n'est pas une raison de ne pas donner une réponse trigonométrique si c'est la plus adaptée.

Si c'est une raison.
C'est une épouvantable aggression contre le pauvre utilisateur qui croyait naïvement qu'il allait avoir un résultat honnête.
Faux. Il y a souvent 2 solutions:
* simplifier, puis dériver (on convertit en tanh, puis on dérive)
* dériver, puis simplifier (on dérive, puis on convertit en cosh ou sech)
et ici, il y a une troisième: dériver sans simplifier, qui est celle que tu sembles préférer ici.

On voit bien les ravages que cause la simplification automatique sur les pauvres tiusers.roll
Comme tu ne t'en rends pas compte, il y a LA dérivation, qui ne se fait grosso modo que d'une manière, et la simplification, qui est un problème annexe.
Et l'esprit avec lequel AMS simplifie est très hautement criticable.
>>> Mais parfois plus pertinente, parfois moins pertinente. Le Cas n'en sais rien.
Je ne vois pas en quoi ce ne serait pas "pertinent".

Alors c'est grave.
Je vais donner un exemple.
Il y a quelques mois, j'ai dû travailler sur une suite de fonctions de la forme Pn(e^x,x), où les Pn sont des polynômes. La suite était définie par récurrence, je ne me souviens plus trop de la formule, il faudrait que je remette la main sur ce papelard. Enfin bref....

J'ai rédigé en quelques lignes un petit programme pour automatiser le calcul, utilisant bien sûr le Cas.

Et bien il aurait été de fort mauvais goût que le Cas s'autorise à introduire des facéties comme des cosh ou sinh sans que je lui donne mon accord. Voilà.
Dans le doûte, simplifier au maximum.

La "simplification" proposée par les Cas est non injective. Elle détruit de l'information. Donc, dans le doute, la Cas doit s'abstenir.
Si on veut autre chose, on utilise expand.

Non.
On utilise une simplification si on veut une simplification.
La France n'est pas le centre du monde. Il y a nettement plus de personnes aux USA qu'en France. Donc ton pourcentage est faux.

D'une part, il me semble (?) que la proportion de calculatrices est plus élevée en France.
D'autre part, je suis égoïstement en faveur du public français.
Simplifier au maximum implique mettre des cosh quand ça rend l'expression plus courte.

(déjà dit) On ne juge pas la simplicité d'une expression avec sa longueur.roll
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

37

HIPPOPOTAME
a écrit : Mais bon, c'est inutilisable en période normale d'utilisation du Cas (en DS) sauf à avoir un compilateur on-calc. et de toute façon ce n'est pas pratique.

Déjà, la "période normale d'utilisation du Cas" n'est pas (ou du moins pas forcément) le DS. Un CAS peut aussi servir:
* pour du travail à la maison.
* pour du travail de recherche qui n'a aucun rapport avec des "devoirs" scolaires ou universitaires.
Par exemple, ici en Autriche, les CAS sont carrément interdits aux examens ("DS"). Mais de toute façon, on fait bien plus de calculs à la maison qu'en examen.
Elle ne donne pas "pas de réponse". Elle renvoie une réponse exacte.

... qui souvent est inutilisable. Cf. factorisation. Si on veut une factorisation, on veut une factorisation. S'il n'y en a pas en exact, ben, l'approché est le seul choix pertinent.
Si ces personnes sont trop faignantes pour ouvrir le manuel et faire un ->NUM, tant pis pour elles.

Et ->NUM factorise automatiquement en approché (en combinaison avec FACTOR)?
D'où l'anarchie dans les résultats : on ne sait pas si c'est juste ou approché.

S'il y a un point décimal, c'est approché.
Si c'est une raison. C'est une épouvantable aggression contre le pauvre utilisateur qui croyait naïvement qu'il allait avoir un résultat honnête.

En quoi le cosh n'est-il pas "honnête"???
On voit bien les ravages que cause la simplification automatique sur les pauvres tiusers.roll Comme tu ne t'en rends pas compte, il y a LA dérivation, qui ne se fait grosso modo que d'une manière, et la simplification, qui est un problème annexe.

1. Souvent, il est judicieux de faire une transformation d'écriture avant de dériver. Ici, c'est le cas. S'il est demandé de dériver, nulle part n'est-il dit que les simplifications d'écriture préalables sont interdites.
2. Après avoir dérivé, on se retrouve souvent avec un résultat assez lourd. Donc il est évident qu'on le simplifie. Sinon, on n'a fait que la moitié du travail.
Et l'esprit avec lequel AMS simplifie est très hautement criticable.

Je ne suis pas d'accord.
Je vais donner un exemple.
Il y a quelques mois, j'ai dû travailler sur une suite de fonctions de la forme Pn(e^x,x), où les Pn sont des polynômes. La suite était définie par récurrence, je ne me souviens plus trop de la formule, il faudrait que je remette la main sur ce papelard. Enfin bref....

J'ai rédigé en quelques lignes un petit programme pour automatiser le calcul, utilisant bien sûr le Cas.
Et bien il aurait été de fort mauvais goût que le Cas s'autorise à introduire des facéties comme des cosh ou sinh sans que je lui donne mon accord. Voilà.

Si les cosh et sinh rendent l'écriture des termes de la suite plus simple, pourquoi pas?
La "simplification" proposée par les Cas est non injective. Elle détruit de l'information.

Beaucoup de simplifications sont non-injectives. Par exemple, en faisant (2x+x)->(3x), on a perdu de l'information. Mais ici, on n'a rien perdu. (e^x+e^(-x))/2<->cosh(x). Ça va dans les 2 sens.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

38

>>> Elle ne donne pas "pas de réponse". Elle renvoie une réponse exacte.
... qui souvent est inutilisable. Cf. factorisation. Si on veut une factorisation, on veut une factorisation. S'il n'y en a pas en exact, ben, l'approché est le seul choix pertinent.


* la réponse en cosh(x) du début du topic est inutilisable.
* Vouloir une factorisation approchée est une affreuse faute de goûtgrin
* RTFM. Un Cas, on apprend à s'en servir.
>>> Si ces personnes sont trop faignantes pour ouvrir le manuel et faire un ->NUM, tant pis pour elles.
Et ->NUM factorise automatiquement en approché (en combinaison avec FACTOR)?

C'est plus propre de demander les racines, pas la forme factorisée.
Enfin bon...
* ->NUM s'obtient en faisant [shift droit]+[ENTER]
* On bascule en mode approché en faisant [shift droit]&[ENTER] (simultané)
C'est un raccourci dont on se souvient immédiatement, grace au superbe design du clavier.
>>>D'où l'anarchie dans les résultats : on ne sait pas si c'est juste ou approché.
S'il y a un point décimal, c'est approché.

1)C'est facile à détecter d'un programme?
2) En calculant 100!/99! , 200!/199!, ..... il arrive un moment où la ti raconte des salades. Pas très sérieux....
En quoi le cosh n'est-il pas "honnête"???

Cf plus bas, et cf la question de je_sais_plus_qui qui a lancé le topic.
1. Souvent, il est judicieux de faire une transformation d'écriture avant de dériver. Ici, c'est le cas.

Ici, ce n'est pas le cas.
S'il est demandé de dériver, nulle part n'est-il dit que les simplifications d'écriture préalables sont interdites.

C'est à l'utilisateur de décider. Si l'utilisateur a arrangé l'expression dans une forme qui lui convient, la simplification détruirait cet arrangement.
Sur Hp, l'éditeur d'équation permet de manipuler "à la main" les expressions. Si à chaque commande du Cas, tout était foutu en l'air, ça ne serait pas très utile....
2. Après avoir dérivé, on se retrouve souvent avec un résultat assez lourd. Donc il est évident qu'on le simplifie. Sinon, on n'a fait que la moitié du travail.

La dérivation n'est que la moitié du travail, en effet. L'utilisateur devrait choisir ensuite un procédé de simplification.
Si les cosh et sinh rendent l'écriture des termes de la suite plus simple, pourquoi pas?

PARCE QUE PAS, BOUGREDIOU!!
J'écris les termes de ma suite sous une forme canonique de polynômes en x et e^x, et non pas sous la forme d'un salmigondi infâme où traînent toutes les fonctions rares et inusitées que le Cas a pu dénicher, ce qui donnerait une suite d'expressions totalement inhomogène et illisible.
Beaucoup de simplifications sont non-injectives. Par exemple, en faisant (2x+x)->(3x), on a perdu de l'information. Mais ici, on n'a rien perdu. (e^x+e^(-x))/2<->cosh(x). Ça va dans les 2 sens.

ICI, on a rien perdu.
C'est un cas particulier.
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

39

HIPPOPOTAME a écrit :
* Vouloir une factorisation approchée est une affreuse faute de goûtgrin

D'un côté, je suis plus ou moins d'accord. D'un autre côté, si tu as un algorithme qui a besoin de la forme factorisée et qu'il n'y a pas de factorisation exacte (du moins pas sous forme de radicaux), tu fais quoi?
* ->NUM s'obtient en faisant [shift droit]+[ENTER]
* On bascule en mode approché en faisant [shift droit]&[ENTER] (simultané) C'est un raccourci dont on se souvient immédiatement, grace au superbe design du clavier.

C'est un design affreux! Les combinaisons de touches séquentielles ou simultanées, si elles sont reconnues toutes les deux, sont censées fonctionner de la même manière. Sinon, on surprend pas mal l'utilisateur.
1)C'est facile à détecter d'un programme?

  // If the result contains floating-point numbers, warn about rounding errors.
  int questionable_accuracy=!is_free_of_tag(top_estack,FLOAT_TAG);

Pour le BASIC, on peut en faire une chaîne Exec relativement courte.
2) En calculant 100!/99! , 200!/199!, ..... il arrive un moment où la ti raconte des salades. Pas très sérieux....

100!/99! -> 100 (correct)
200!/199! -> 200 (correct)
300!/299! -> 300. (correct, mais calculé en approché)
400!/399! -> 400. (correct, mais calculé en approché)
500!/499! -> 500!/499! (correct, mais la simplification pourrait être meilleure en effet)
100000!/99999! -> 100000!/99999! (idem)
Je ne vois pas où est ton problème.
Ici, ce n'est pas le cas.

Si. C'est judicieux parce que ça simplifie les calculs. Au lieu de faire des calculs compliqués avec la règle des quotients, tu prends une formule trigonométrique directement (ou presque: il y a la dérivée intérieure, mais elle est constante, donc très simple): tanh'=-sech².
C'est à l'utilisateur de décider. Si l'utilisateur a arrangé l'expression dans une forme qui lui convient, la simplification détruirait cet arrangement. Sur Hp, l'éditeur d'équation permet de manipuler "à la main" les expressions. Si à chaque commande du Cas, tout était foutu en l'air, ça ne serait pas très utile....

Hail et EQW sur TI-89/92+/V200 permettent aussi d'évaluer des sous-expressions et de faire des factorisations/développements dessus. Et malgré la simplification automatique, c'est utilisable.
PARCE QUE PAS, BOUGREDIOU!! J'écris les termes de ma suite sous une forme canonique de polynômes en x et e^x, et non pas sous la forme d'un salmigondi infâme où traînent toutes les fonctions rares et inusitées que le Cas a pu dénicher, ce qui donnerait une suite d'expressions totalement inhomogène et illisible.

Question de goût.
Le fait de reconnaître des cosh et sinh dans les termes de la suite pourrait révéler des caractéristiques interressantes de ta suite.
ICI, on a rien perdu. C'est un cas particulier.

Bon, montre-moi un cas où la transformation de (e^x+e^(-x))/2 en cosh(x) perd de l'information qui n'a pas déjà été perdue avant.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

40

D'un côté, je suis plus ou moins d'accord. D'un autre côté, si tu as un algorithme qui a besoin de la forme factorisée et qu'il n'y a pas de factorisation exacte (du moins pas sous forme de radicaux), tu fais quoi?

Si c'est un algorithme de *calcul formel*, c'est d'un gout tout aussi douteux.
Sinon, l'algorithme n'a en fait besoin que des racines.

Et une fois pour toute, on apprend à se servir de sa calculatrice.
C'est un design affreux! Les combinaisons de touches séquentielles ou simultanées, si elles sont reconnues toutes les deux, sont censées fonctionner de la même manière. Sinon, on surprend pas mal l'utilisateur.

Tu parles par ignorance. Je te pardonne donc cette bêtise smile
C'est l'une des innovations géniales entre le clavier d'une hp48 et celui d'une hp49.
Pour le BASIC, on peut en faire une chaîne Exec relativement courte.

rotfl
du code binaire...
rotfl
100!/99! -> 100 (correct)
200!/199! -> 200 (correct)
300!/299! -> 300. (correct, mais calculé en approché)
400!/399! -> 400. (correct, mais calculé en approché)
500!/499! -> 500!/499! (correct, mais la simplification pourrait être meilleure en effet)
100000!/99999! -> 100000!/99999! (idem) Je ne vois pas où est ton problème.

ah tiens? J'ai du me tromper, ou alors il s'agissait d'une ancienne rom.

En tout cas on voit bien que la simplification d'AMS est très criticable grin
Si. C'est judicieux parce que ça simplifie les calculs. Au lieu de faire des calculs compliqués avec la règle des quotients, tu prends une formule trigonométrique directement (ou presque: il y a la dérivée intérieure, mais elle est constante, donc très simple): tanh'=-sech².

C'est la machine qui fait le calcul.
ça ne simplifie rien du tout pour la machine : le temps perdu à détecter des motifs est très certainement supérieur à la dérivation, qui est bête et mécanique.
Hail et EQW sur TI-89/92+/V200 permettent aussi d'évaluer des sous-expressions et de faire des factorisations/développements dessus. Et malgré la simplification automatique, c'est utilisable.

Bien moins puissant
Question de goût. Le fait de reconnaître des cosh et sinh dans les termes de la suite pourrait révéler des caractéristiques interressantes de ta suite.

Non, pas question de goût!
C'est, dans l'absolu et de manière totalement objective, un choix *mauvais* et *exaspérant*.
1) Je veux mes résultats sous leur forme canonique. Le Cas n'a pas à improviser, il doit obéir!
2) Le Cas n'a de toute façon *pas* la compétence pour trouver les caractéristiques intéressantes. Si je veux examiner les expressions sous forme trigo, ou sous toute autre forme, je le demande.
Bon, montre-moi un cas où la transformation de (e^x+e^(-x))/2 en cosh(x) perd de l'information qui n'a pas déjà été perdue avant.

Si j'écris f(x)=e^x+2cosh(x), avec la volonté explicite d'utiliser cette forme (par exemple parce qu'une question suivante étudie e^x+n*cosh(x) ), le Cas perdra définitivement la forme de l'expression dès qu'il s'avisera de changer cosh<->exp.

Mais évidemment ce n'est pas avec cosh/sinh/tanh que les problèmes de simplification sont les plus aigus
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

41

HIPPOPOTAME a écrit :
rotfl
du code binaire...
rotfl

Où est le problème?
En tout cas on voit bien que la simplification d'AMS est très criticable grin

Elle n'est pas parfaite, certes. Et là, elle rate vraiment une simplification toute bête. Mais elle n'est pas si mauvaise que ça. Et ici, tout d'un coup, tu râles parce qu'une simplification n'est pas faite, pas parce qu'une simplification est faite...
Si j'écris f(x)=e^x+2cosh(x), avec la volonté explicite d'utiliser cette forme (par exemple parce qu'une question suivante étudie e^x+n*cosh(x) ), le Cas perdra définitivement la forme de l'expression dès qu'il s'avisera de changer cosh<->exp.

La transformation se fait dans les 2 sens:
e^x+2cosh(x)=e^x+2(e^x+e^(-x))/2=e^x+e^x+e^(-x)=2e^x+e^(-x)
2e^x+e^(-x)=e^x+(e^x+e^(-x))=e^x+2cosh(x)
(On voit que le e^x est en trop - même un CAS peut voir ça, il suffit de comparer les coefficients -, donc on l'"épluche", puis le reste va tout seul.)
Mais évidemment ce n'est pas avec cosh/sinh/tanh que les problèmes de simplification sont les plus aigus

D'où le choix de TI.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

42

Pour savoir si la 89 fait du calcul approché on doit pouvoir convertir l'expr en chaîne et utilser : If Instring(chaine,".") >0
Fiou.

43

C'est une bonne idée, mais pas aussi fiable que is_free_of_tag.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

44

>>> du code binaire...
Où est le problème?

rotfl
Le plus drôle c'est que tu poses la question!
rotfl
Elle n'est pas parfaite, certes. Et là, elle rate vraiment une simplification toute bête. Mais elle n'est pas si mauvaise que ça. Et ici, tout d'un coup, tu râles parce qu'une simplification n'est pas faite, pas parce qu'une simplification est faite...

Quand on a décidé de simplifier, on simplifie.
Mais là... un coup un entier, un coup un flottant, un coup rien du tout.... c'est se moquer du monde!
La transformation se fait dans les 2 sens:
e^x+2cosh(x)=e^x+2(e^x+e^(-x))/2=e^x+e^x+e^(-x)=2e^x+e^(-x)
2e^x+e^(-x)=e^x+(e^x+e^(-x))=e^x+2cosh(x) (On voit que le e^x est en trop - même un CAS peut voir ça, il suffit de comparer les coefficients -, donc on l'"épluche", puis le reste va tout seul.)

moui enfin brefroll
compliqué, compliqué...
Un Cas est fait pour diminuer la complexité des calculs, pas l'augmenterroll
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

45

HIPPOPOTAME a écrit :
Quand on a décidé de simplifier, on simplifie. Mais là... un coup un entier, un coup un flottant, un coup rien du tout.... c'est se moquer du monde!

C'est parce qu'il manque la règle de simplification. Donc les factorielles sont évaluées directement. Et:
* quand elles sont en dessous de 10615 environ, elles sont évaluées comme des entiers exacts.
* quand elles sont entre 10615 environ et 101000, elles sont évaluées en virgule flottante.
* au-delà, elles ne sont pas évaluées du tout.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

46

comportement anarchique....
enfin bon c'est pas dramatique.
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