Page 12 sur 14

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 26 Sep 2020, 20:43
de Maxam
parisse a écrit:L'equivalent avec KhiCAS (appel d'une fonction Xcas depuis MicroPython)
Code: Tout sélectionner
from cas import *
caseval("f(x):=x^2")
eval(caseval("f("+str(9)+")"))


Est-ce qu'il est possible d’appeler une fonction python depuis le cas ?
Normalement c'est pas très compliqué à implémenter (avec Python en tout cas, Micropython je ne sais pas).

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 26 Sep 2020, 21:19
de parisse
Je ne l'ai pas encore porte sur calculatrices, dans Xcas on peut appeler MicroPython depuis l'interpreteur Xcas par la commande
Code: Tout sélectionner
python("commande_python",python)

ca renvoie une chaine de caracteres, par exemple python("1/2",python) renvoie "0.5".

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 27 Sep 2020, 10:13
de parisse
Voila, c'est disponible sur les nspire cx.

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 27 Sep 2020, 10:33
de Maxam
parisse a écrit:Voila, c'est disponible sur les nspire cx.


Super, je vais tester sur a CX II, KhiCas est stable maintenant dessus ou est-ce qu'il y a encore des incompatibilités / des choses qu'il vaut mieux que j'évite de faire ?

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 27 Sep 2020, 11:01
de parisse
Je n'ai pas encore teste les sessions du repertoire Xcas, mais je suis assez confiant, les problemes potentiels sur la cx ii, ce sont des problemes de gestion du hardware. Dont bien sur le backlight que je n'arrive pas a controler, il n'est donc pas possible de faire OFF/ON dans KhiCAS. Et des problemes de gestion du clavier semble-t-il sur certaines revisions materielles, mais ca on le voit des le lancement.

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 27 Sep 2020, 12:14
de Excale
parisse a écrit:Je n'arrive pas a le faire fonctionner, ca crashe. J'ai recompile en adaptant le Makefile pour ndless recent, pas plus de succes. La ligne qui fait planter a l'emulateur c'est J(K"*");
Probable que les valeurs de _J (et sans doute d'autres) ne sont plus valides avec les OS plus recents, le programme date de 2012. Pas vu d'algo de decryptage dans le source.


Je confirme qu'il faudrait mettre à jour les syscalls _D à _J et N/O (au moins!) pour espérer que ça fonctionne sur un OS plus récent.
Si en plus ils ont changé leur code entre temps, ça risque de demander encore plus de travail.

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 29 Sep 2020, 17:18
de Arbus33
Bonjour à tous,
J'ai essayé les commandes de la présentation sur ma toute nouvelle CX II-T CAS mise à jour, et je trouve pour sys.maxsize un modeste 32767.
C'est sur le logiciel TI que l'on obtient la valeur "64 bits" de la présentation.

Est-ce que j'ai fait une erreur de manip ?
Sinon, quelles conséquences cette différence peut-elle avoir sur l'utilisation du Python ?
Bravo aux membres du forum pour tout le boulot fourni.

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 29 Sep 2020, 17:19
de critor
Merci pour la précision, effectivement. :)

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 27 Mar 2021, 21:34
de critor
Donc, il y avait en version 5.2 un bug avec le module Python ti_image, traité dans l'article et que je rappelle ici.

Lorsque l'on insère une ressource image dans un document .tns via l'éditeur de script Lua :
  • l'image est affichée correctement par un script Lua
  • mais l'image est affichée à l'envers par un script Python, et parfois pire avec une distorsion horizontale




Espérons que ce sera enfin corrigé pour la version 5.3, mise à jour annuelle à venir d'ici la rentrée 2021 je suppose.



Autre bug découvert ces derniers jours et ici majeur, puisque pouvant à la différence impacter un très large éventail de scripts.
La fonction round() génère une exception si :
  • on lui demande d'arrondir un nombre entier
  • tout en précisant le nombre de décimales souhaitées

Bien sûr aucun intérêt à arrondir un entier, mais dans le contexte d'un script, il est parfaitement possible de temps en temps que les valeurs traitées soient entières.
Personnellement, je m'en suis rendu compte en intégrant un turtle.py à certains de mes documents .tns, script qui fonctionnait parfaitement sur d'autres plateformes. Certains mouvements de la tortue généraient donc une exception, lorsque les valeurs géométriques calculées en interne étaient donc entières.

Le bug n'est pas présent sur les TI-83PCE/84+CE ni sur les modèles concurrents, ces derniers n'ont aucune difficulté à arrondir.

Re: Sortie/test TI-Nspire CX II 5.2 Python + QCC 2020 épilog

Message non luPosté: 27 Mar 2021, 21:56
de Adriweb
C'est embarrassant ca...

Mais bon en attendant ce n'est pas compliqué de se créer un "wrapper":

Code: Tout sélectionner
round_ = round

def is_integer_num(n):
    if isinstance(n, int):
        return True
    if isinstance(n, float):
        return n.is_integer()
    return False

def round(n, p):
  return n if is_integer_num(n) else round(n, p)


... ou un truc dans ce genre (pas testé)