π
<-
Chat plein-écran
[^]

Py4Calc, le premier traducteur python vers Ti-Basic

Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby Zynk » 29 Mar 2020, 17:27

Bonjour à tous,

Aujourd’hui j’ai le plaisir de vous présenter
le premiers convertisseur python vers Ti-Basic :
Py4calc


Py4Calc est un projet datant de 2008 initié par
Luke Bryan
qu’il a arrêté de développer en 2013 et que j’ai retrouvé il y a peu.

Je me suis donc permit de le dépoussiérer, de l’actualiser, et de le modifier quelque peu avec l’aide de Dogm afin qu’il puisse remarcher dans des conditions optimales et ainsi vous présenter
la version 2.0
.

Pour utiliser le logiciel c’est très simple :

- Lancez Py4CalcV2.exe
- Sélectionnez le script Python que vous souhaitez convertir
- Donner lui un nom
- Et enfin récupérer le programme Ti-basic dans le dossier, il ne vous reste plus qu’à l’introduire dans votre calculatrice via le
logiciel Ti-connect

Petit disclaimer :
le langage Ti-basic n’ayant pas les mêmes fonctions que le python, il est possible qu’il faille
simplifier le scripte python
comme par exemple avec les “ellif” à transformer en :

if <condition>:

...

else:

if <condition>:

...

else:



Mais ne vous inquiétez pas,
un message d’erreur
vous expliquera comment faire pour chaque cas :

Image

Par ailleurs, si vous rencontrer le moindre problème, bug, critique ou suggestion d’amélioration, n’hésitez pas à vous manifester dans ce topic et nous nous ferons un plaisir d’y répondre

Le lien vers l'archive :
User avatar
ZynkProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 58.2%
 
Posts: 4
Joined: 26 Sep 2018, 14:34
Gender: Not specified
Calculator(s):
Class: 1er général option math/H.G.GP.SP/SES

Re: Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby LePetitMage » 21 Apr 2020, 08:11

Le contraire serait utile aussi.
Vous prévoyez de le faire ?

Il va falloir que je me débrouille pour le faire fonctionner sur mac.
Je dis que je ne dis rien, à part que mes programmes sont disponibles
ici
. Image

En mettant à profit mes pouvoirs de devin, sachant que j'ai écris ma signature bien avant ta venue, ton pseudo est Anonymous.:whistle:
User avatar
LePetitMagePremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 56.7%
 
Posts: 266
Images: 20
Joined: 25 Oct 2018, 17:41
Location: Chez moi
Gender: Male
Calculator(s):
Class: TS
GitHub: LePetitMage

Re: Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby Bisam » 21 Apr 2020, 12:59

Serait-il possible d'avoir un aperçu un peu plus précis des capacités de ce convertisseur ?
Le python est beaucoup plus riche que le TI-Basic et il y a donc forcément des choses non prises en charge, mais pourrait-on savoir ce qui est pris en charge, exactement ?

Je suppose par ailleurs que l'on convertit seulement vers le TI-Basic pour TI-z80... est-ce prévu de proposer le TI-Basic pour TI-68k ou mieux pour Nspire ?

Cela serait vraiment un beau projet, surtout si on lui adjoint un convertisseur dans l'autre sens (plus utile de nos jours et plus facile !)
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 48.4%
 
Posts: 5480
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):

Re: Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby Zynk » 21 Apr 2020, 13:33

Bonjour a tous merci pour vos retours

LePetitMage wrote:Le contraire serait utile aussi.
Vous prévoyez de le faire ?

Il va falloir que je me débrouille pour le faire fonctionner sur mac.


Normalement pour mac (et pour linux) le .exe est censé fonctionner sans ajustement avec python 3.x mais je ne l'ai pas essayé n'aillant pas de mac :p
Si vous pouviez me faire un retour là-dessus cela m'intéresserait

Bisam wrote:Serait-il possible d'avoir un aperçu un peu plus précis des capacités de ce convertisseur ?
Le python est beaucoup plus riche que le TI-Basic et il y a donc forcément des choses non prises en charge, mais pourrait-on savoir ce qui est pris en charge, exactement ?

Je suppose par ailleurs que l'on convertit seulement vers le TI-Basic pour TI-z80... est-ce prévu de proposer le TI-Basic pour TI-68k ou mieux pour Nspire ?

Cela serait vraiment un beau projet, surtout si on lui adjoint un convertisseur dans l'autre sens (plus utile de nos jours et plus facile !)


Pour ce qui est de ces capacité c'est assez limiter pour l'instant (un gros programmes python ne marchera pas cela ce limite plus a un usage de petit programme scolaire) je vais essayer de dresser une liste relativement exhaustive de ce qui est pris en charge ou non

Effectivement pour l'instant c'est que pour du TI z80 pour les autres cela pourrait être possible mais je ne les connais pas du tout donc ce n'est actuellement pas prévus

Pour le convertisseur de ti basic vers python je vais m'en occuper de ça je vous tiens au courant de l'avancement de la suite de ce projet
User avatar
ZynkProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 58.2%
 
Posts: 4
Joined: 26 Sep 2018, 14:34
Gender: Not specified
Calculator(s):
Class: 1er général option math/H.G.GP.SP/SES

Re: Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby Dogm » 21 Apr 2020, 14:48

Voici la liste des instructions prise en charge.

Le convertisseur prend en charge :

- les
boucles
(while et for)
- les
fonctions
: int(, float(, len(, random(), randint(, input(, print( et eval(
- les
constantes
: pi et e

Ainsi que les
fonctions mathématiques
:

- sin, cos, tan, asin, acos, atan, sinh, cosh, tanh, asinh, acosh, atanh
- sqrt(
- fabs(
- log(
- exp(
- floor(
- log10(


En revanche il affiche des
erreurs
lorsque :

- la fonction pow est utilisée
- l'opérateurs -= est utilisé
- des fonctions sont définies
- l'instruction open est utilisée
- le signe - est utilisé
- l'opérateur % (modulo) est employé (pas d'équivalent en Ti-basic)
- des instructions d'importation sont employés
- la condition elif est utilisée (le message d'erreur sera accompagné d'un texte qui vous suggérera un équivalent)

Ou des
messages
de
mise en garde
lorsque :

- des chaines de caractère de plus de 16 caractères sont employées (elle dépasse de l'écran)
- la commande \n pour le retour à la ligne est comprise dans une chaine de caractère (pas d'équivalent en Ti-basic)
- les blocs de documentation sous forme """ sont employés (pas d'équivalent en Ti-basic)
Last edited by Dogm on 21 Apr 2020, 15:56, edited 1 time in total.
Entraînement Cérébral du Pr Kawashima Numworks

36%


Omega does what epsilon't
User avatar
DogmEcrivain
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 81.8%
 
Posts: 105
Images: 7
Joined: 14 Nov 2019, 18:53
Location: Lyon, France
Gender: Male
Calculator(s):
Class: Lycéen 2nde Sciences de l'ingénieur
GitHub: tim_ats_d

Re: Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby LePetitMage » 21 Apr 2020, 15:17

Il existe la fonction reste( en TI-Basic qui devrait être l'équivalent du % (modulo).

Et pour les instructions d'importations, il suffit de les ignorer, non ?

Pour les définitions de fonctions, un sous-programme devrait faire l'affaire.
Je dis que je ne dis rien, à part que mes programmes sont disponibles
ici
. Image

En mettant à profit mes pouvoirs de devin, sachant que j'ai écris ma signature bien avant ta venue, ton pseudo est Anonymous.:whistle:
User avatar
LePetitMagePremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 56.7%
 
Posts: 266
Images: 20
Joined: 25 Oct 2018, 17:41
Location: Chez moi
Gender: Male
Calculator(s):
Class: TS
GitHub: LePetitMage

Re: Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby Bisam » 21 Apr 2020, 15:35

"pow" n'est pas une commande en python, mais une fonction... et c'est simplement la fonction puissance (éventuellement modulo quelque chose). Il est facile de la convertir, me semble-t-il.

Les fonctions mathématiques en python, ainsi que les constantes
$mathjax$\pi$mathjax$
et
e
nécessitent une importation... donc il ne sert à rien de les convertir si tu ne gères pas les importations !

Les affectations condensées (du type +=, -=, *=, etc...) sont faciles à convertir également.

Enfin, tu as déjà trouvé comment gérer le "elif"... alors il suffit de le faire dans ton convertisseur, non ?

Pour les fonctions, malheureusement, c'est le gros problème du TI-Basic z80.... contrairement au Basic 68k ou Nspire.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 48.4%
 
Posts: 5480
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):

Re: Py4Calc, le premier traducteur python vers Ti-Basic

Unread postby Dogm » 21 Apr 2020, 15:55

LePetitMage wrote:Il existe la fonction reste( en TI-Basic qui devrait être l'équivalent du % (modulo).


Okay merci on va modifier ça :#top#:.

Et pour les instructions d'importations, il suffit de les ignorer, non ?


J'ai dit des bêtises. Le programme les ignore déjà et affiche un message de mise en garde :), au temps pour moi.

"pow" n'est pas une commande en python, mais une fonction... et c'est simplement la fonction puissance (éventuellement modulo quelque chose). Il est facile de la convertir, me semble-t-il.

Les affectations condensées (du type +=, -=, *=, etc...) sont faciles à convertir également.

Enfin, tu as déjà trouvé comment gérer le "elif"... alors il suffit de le faire dans ton convertisseur, non ?


On va essayer de fixer tous cela, merci pour vos sugestions
Entraînement Cérébral du Pr Kawashima Numworks

36%


Omega does what epsilon't
User avatar
DogmEcrivain
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 81.8%
 
Posts: 105
Images: 7
Joined: 14 Nov 2019, 18:53
Location: Lyon, France
Gender: Male
Calculator(s):
Class: Lycéen 2nde Sciences de l'ingénieur
GitHub: tim_ats_d


Return to TI-Basic

Who is online

Users browsing this forum: No registered users and 8 guests

-
Search
-
Featured topics
L'OS 5.5 de la TI-83 Premium CE / 84 Plus CE supprime l'assembleur - la plupart des jeux et certains programme ne fonctionneront plus
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
Découvre les nouvelles fonctionnalités en Python de l'OS 5.5 pour la 83PCE/84+C-T Python Edition
Comparaisons des meilleurs prix pour acheter sa calculatrice !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
620 utilisateurs:
>608 invités
>7 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)