Page 1 of 2

Getkey Nspire

Unread postPosted: 14 Apr 2013, 23:35
by davidElmaleh
J'aimerais savoir si il y'a un moyen pour "recréer" la fonction getkey() sur Nspire?

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 00:04
by Levak
En TI-Basic ? Non.
En Lua, ça passe par les évènements on.charIn(), on.arrowKey() etc ..

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 00:45
by davidElmaleh
coté Lua.. je suis pas trés bien calé
Donc, pour le basic c cuit :p

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 06:32
by Lionel Debroux
Eh oui, le BASIC des Nspire ne sait toujours pas faire getKey ou dessiner des pixels à l'écran, ce que virtuellement toutes les autres calculatrices graphiques savent faire car c'est quand même une fonctionnalité de base...

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 18:58
by davidElmaleh
autre chose, y'a t-il un moyen de "recréer" la fonction polycoeffs de la TI Nspire pour les ti 89,92, voyage 200?

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 19:07
by Lionel Debroux
Oui, en BASIC et en C/ASM :)

En BASIC, ça doit être faisable à coups de "part", par exemple.
En C/ASM: après le passage en forme canonique (push_internal_simplify), les termes du polynôme seront rangés dans un certain ordre de puissances de la variable du polynôme (je ne sais plus si c'est l'ordre croissant ou l'ordre décroissant), en tant que somme (le top de l'arbre RPN va probablement être un ADD_TAG) multiple de termes qui seront:
* pour l'ordre 0, un coefficient (entier, flottant ou symbolique);
* pour l'ordre 1, le produit (MUL_TAG) d'un coefficient (entier, flottant ou symbolique, divers tags) et d'une variable (27 tags);
* pour les ordres > 1, le produit d'un coefficient et de la puissance (POW_TAG) d'un coefficient entier et d'une variable.
Et il doit y avoir des fonctions d'un peu plus haut niveau pour faciliter l'accès aux facteurs et termes. Voir la doc de GCC4TI (lien dans ma signature), les fonctions et infos seront principalement dans estack.h.

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 19:46
by Bisam
En Basic, on peut se contenter d'utiliser la dérivation (et la formule de Taylor), plutôt que la fonction part, puisque celle-ci possède l'inconvénient de ne pas toujours tenir compte de l'ordre des termes d'une somme ou d'un produit !

Grosso-modo, voici ce que ça peut donner :
Code: Select all
polycoeffs(poly,vr)=Func
Local ll,k
1->k
poly | vr=0 ->ll[1]
While when( poly=0,false,true,true)
  d(poly,vr)->poly
  (poly | vr=0)/(k!)->ll[k+1]
  k+1->k
EndWhile
Return ll
EndFunc


Le "when", c'est pour éviter l'erreur "A test did not resolve to true or false" quand le polynôme contient d'autres variables.

[Edit] J'ai modifié le programme à cause d'une petite erreur et pour éviter le problème du symbole "différent" peu compréhensible.

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 22:11
by davidElmaleh
a quoi correspondent les <> apres le poly?
ps: j'avoue n'avoir rien compri au programme

----------

Bref, voila mon probleme:
en faisant request "Un+1 =",un1, cette variable contient la relation de récurence de Un+1 en fonction de Un
Mon programme n'est utilisable que pour les les suites arithmeticogeometriques où Un+1 =a*Un + b
j'aimerai isoler le a et le b pour pouvoir les utiliser et ainsi analyser la suite


EDIT: Merci d'éditer ton post et de ne pas double-poster :).

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 22:51
by Adriweb
C'est le symbole "différent" (!=)

Re: Getkey Nspire

Unread postPosted: 15 Apr 2013, 23:33
by davidElmaleh
mais quand j'essaye polycoeffs(2x+3,x) avec le programme de Bisame, il me disent "Done"
Son programme est trop compliqué pour moi
n'y a t il pas une autre solution à mon problème ?

---------

Réponse trouvée!!
étant donné que ma fonction est a*x+b, j'ai mis:
request "f(x)?",f
expr(f)->f
f|x=0->b
(f-b)/x->a

et voilaa