Fonctions sur texte / valeurs

JCB shared this question 7 years ago
Answered

Bonjour à tous,


J'aimerais afficher un texte qui contenne une "bonne écriture" d'une fonction qui est paramétrée par des curseurs. Par "bonne écriture" j'entends que les valeurs décimales soient écrites en fraction (je connais l'usage de FractionTexte[] ) et qu'en plus les simplifications des signes soient effectuées. Par exemple si on considère la fonction y=ax^2 + bx + c avec a,b et c des paramètres, si a=1 et b=-5,c=7.5 on devrait pouvoir afficher le texte y=x^2-5x+15/2, et non y=1x+-5x+7.5.


Ce que je fais est composer un texte et je traite les symboles un a un, via des opérateurs logiques, signe(), FractionTexte[],... mais je me demande s'il y a une façon moins artisanale de fonctionner, par exemple faire une fonction qui prend comme argument une valeur numérique (par exemple b=7.5) et renvoie quelque chose comme une chaîne de caractères contenant, dans ce cas "+" suivi de FractionTexte. Il s'agirait en quelque sorte de forcer l'affichage du signe d'une valeur numérique.


Suggestions?


JC

Comments (4)

photo
1

Bonjour


Beaucoup de "progrès" ont été fait depuis le temps où je faisais comme toi (tests et tests...)

Mais ce n'est pas encore "parfait" (problèmes avec les valeurs -1, 0 et 1...)


------------------------------------


La façon la plus simple d'avoir un texte dans le graphique

est d'attraper la formule dans la fenêtre Algèbre et de la faire glisser dans le graphique

f(x)=ax² + bx + c

> Problème avec les valeurs 0 et 1 (voir en bleu), et les coefficients ne sont pas fractionnaires

g(x)=Simplifier [f]

> plus de problèmes avec 0 et 1, mais la formule est donnée sous forme de fraction (voir en rouge), et non pas les coefficients


https://ggbm.at/567713


-------------------------------------------------


Autre façon :

Tu crées 3 fonctions

h(x)=Simplifier[a]

p(x)=Simplifier

q(x)=Simplifier[c]


puis

f(x)=h(x) x^2+p(x) x + q(x)


> Tu as alors les coefficients sous forme fractionnaire

(mais toujours "problème" avec 0 et 1 et -1 !)


https://ggbm.at/567715

photo
1

Ahhh une bonne nouvelle !

Ça marche bien en passant par le calcul formel !


(Je n'avais lu ceci nulle part sur le forum français)


alors pourquoi je dis "presque parfait"

pcq il arrive de le trinôme, pour je ne sais quelles raisons, ne soit plus "ordonné"

(en particulier il me semble si c est fractionnaire, je vais signaler ce fait à Bernard)

Cela "désordonne" le polynôme quand c n'est pas entier...

photo
1

Merci beuacoup!

En effet, le polynôme est "désordonné" lorsque les valeurs ne sont pas des entiers, mais j'ai trouvé une façon de contourner le problème, c'est encore un peu "artisanal" mais ça semble marcher. En gros il faut déclarer chaque monôme séparément, puis additionner à la fin.


La seule chose que je n'aime pas trop c'est le rendu : il ne s'agit pas d'une formule LaTeX, ou, plutôt c'est quelque chose de différent de ce qu'on obtendrait en entrant le texte comme du LaTeX [...]


Et je reviens, sur mon point, j'ai trouvé comment contourner ce problème aussi. Voir pièce jointe.


Merci à nouveau.


JC

https://ggbm.at/567721

photo
1

La, ça ne marche plus... j'avais déjà remarqué quelques "comportements non commutatifs" qui devraient être "commutatfs" par le passé, rien de trop grave cependant. Donc retour aux tests et le bidouillage avec FractionTexte[..] et compagnie... :-(


Est-ce que la différence que tu remarques pourrait venir du fait que je suis sous Linux (ubuntu 12.04, version 4.4.42 de GeoGebra)? Me sembe peu probable car tu as, si je comprends bien, ouvert mon fichier dans ton ordinateur... mystère!


JC

© 2022 International GeoGebra Institute