π
<-

NumWorks v14: exploration turtle + tests compatibilité

NumWorks v14: exploration turtle + tests compatibilité

Unread postby Admin » 13 Jun 2020, 15:57

12534NumWorks vient de lancer le bêta-test public de sa prochaine version 14, avec un menu pantégruélique.

Nous nous attardons aujourd'hui plus en détail sur les ajouts apportés au module Python turtle.

Lors d'un précédent test comparatif à l'occasion de la dernière mise à jour Casio, nous y avions en effet remarqué quelques faiblesses.








1) Exploration turtle

Go to top

À l'aide de notre script explmod.py, commençons par fouiller le module turtle à la recherche de nouveautés.

Nous avions pour référence jusqu'à présent 38 à 60 éléments en comptant les sous-éléments.
Code: Select all
def getplatform():
  id=-1
  try:
    import sys
    try:
      if sys.platform=='nspire':id=0
      if sys.platform.startswith('TI-Python') or sys.platform=='Atmel SAMD21':id=4
    except:id=3
  except:
    try:
      import kandinsky
      id=1
    except:
      try:
        if chr(256)==chr(0):id=5+(not ("HP" in version()))
      except:
        id=2
  return id

platform=getplatform()
#lines shown on screen
#plines=[29,12,  7, 9,11,0,0]
plines=[29,16,  7, 9,11,0,0]
#max chars per line
#(error or CR if exceeded)
pcols =[53,99,509,32,32,0,0]

unsafe = ((), (), (), ('sys.argv', 'sys.path'), (), (), ())

if platform>=0:
  curline=0
  _p = print
  nlines=plines[platform]
  ncols=pcols[platform]
  def print(*ls):
    global curline
    st=""
    for s in ls:
      if not(isinstance(s,str)):
        s=str(s)
      st=st+s
    stlines=1+int(len(st)/ncols)
    if curline+stlines>=nlines:
      input("Input to continue:")
      curline=0
    _p(st)
    curline+=stlines

def sstr(obj):
  try:
    s=obj.__name__
  except:
    s=str(obj)
    a=s.find("'")
    b=s.rfind("'")
    if a>=0 and b!=a:
      s=s[a+1:b]
  return s

def isExplorable(obj):
  for k in done:
    try:
      if isinstance(obj, eval(k)):
        t, done[k] = done[k], True
        return not t
    except: pass
  if str(obj).startswith("<module"): return False
  l = ()
  try: l = dir(obj)
  except: pass
  return len(l)

done = {'str':False, 'list':False, 'tuple':False, 'dict':False, 'complex':False, 'set':False, 'frozenset': False}

def explmod(pitm, pitmsl=[], reset=True):
  global curline
  spitm=sstr(pitm)
  if(reset):
    curline=0
    pitmsl=[spitm]
    for k in done: done[k] = False
  hd="."*(len(pitmsl)-1)
  c,c2=0,0
  l = sorted(dir(pitm))
  for i in range(len(l)):
    l[i] = (l[i], getattr(pitm, l[i]))
  try:
    if not isinstanceof(pitm, str):
      for i in range(len(pitm)):
        l.append((spitm+'['+str(i)+']',pitm[i]))
  except: pass
  for itm in l:
    c,c2=c+1,c2+1
    isUnsafe = platform >= 0 and '.'.join(pitmsl + [itm[0]]) in unsafe[platform]
    try:
      if isUnsafe: raise Exception
      print(hd+itm[0]+"="+str(itm[1]))
    except:
      print(hd+itm[0])
    if not isUnsafe and isExplorable(itm[1]) and itm[1] != pitm and itm[0] not in pitmsl:
      pitmsl2=pitmsl.copy()
      pitmsl2.append(itm[0])
      c2=c2+explmod(itm[1], pitmsl2, False)[1]
  if c>0 and reset:
    print(hd+"Total: "+str(c)+" 1st level item(s)")
    if c2>0 and c2!=c:
      print(hd+"       "+str(c2)+" item(s)")
  return [c,c2]

1254612545Nous avons donc désormais de 40 à 62 éléments, avec les deux ajouts suivants :
  • fonction colormode()
  • fonction write()

Nous allons bien évidemment en expliciter l'intérêt, mais en attendant petit bilan au sujet de la richesse des différentes solutions Python sur calculatrices :
Casio Graph
35+E II
90+E
NumWorks
TI-83PCE
Ed. Python
builtins
array
collections
cmath
gc
math
matplotlib
matplotlib.pyplot
micropython
os
random
sys
time
turtle
uerrno
84-197
.
.
.
.
25-47
.
.
.
.
8-30
.
.
.
.
97-1581
3-363
.
13-428
9-404
42-602
.
.
10-410
.
.
17-977
.
.
25-1277
89-211
.
.
12-34
.
41-63
3-25
11-33
6-28
.
9-31
.
3-25
40-62
.
92-211
2-24
2-24
.
7-29
28-50
.
.
.
.
8-30
15-93
4-26
.
.
spécifiquecasioplot:6-28prime:3-368ion:48-162
kandinsky:8-30
ti_graphics:30-75
ti_hub:?
ti_plotlib:49-84
ti_system:12-34
ti_rover:66-92
Modules491113
Eléments123-302219-6042269-703315-772

  1. 315-772 éléments : TI-83 Premium CE Edition Python
  2. 269-703 éléments : NumWorks
  3. 219-6042 éléments : HP Prime (version alpha)
  4. 123-302 éléments : Casio Graph 90+E / 35+E II
Casio Graph
35+E II
90+E
CasioPython
Casio Graph
35+E II
35+E/USB
75/85/95
MicroPython
TI-Nspire
TI-Python
TI-83PCE
Ed. Python
builtins
array
collections
cmath
gc
math
matplotlib
matplotlib.pyplot
micropython
os
random
sys
time
turtle
uerrno
84-197
.
.
.
.
25-47
.
.
.
.
8-30
.
.
69-126
.
91-230
2-28
.
12-38
7-33
41-67
.
.
6-32
.
8-34
12-38
.
.
24-108
93-218
2-28
.
12-38
7-33
41-67
.
.
3-29
.
.
15-86
.
.
.
92-212
2-24
2-24
.
7-29
28-50
.
.
.
.
8-30
15-93
4-26
.
.
93-214
2-25
2-25
12-35
7-30
41-64
.
.
6-29
15-38
8-31
15-99
8-33
.
.
92-211
2-24
2-24
.
7-29
28-50
.
.
.
.
8-30
15-93
4-26
.
.
spécifiquecasioplot:6-28
matplotl:25-68
nsp:3-10board:22
storage:7-47
ce_box:5-32
ce_chart:8-67
ce_quivr:5-41
ce_turtl:?
ti_graphics:30-75
ti_hub:?
ti_plotlib:49-84
ti_system:12-34
ti_rover:66-92
Modules69891317
Eléments217-496203-608176-509158-488238-692333-912

  1. 322-912 éléments : TI-83 Premium CE Edition Python
  2. 269-703 éléments : NumWorks
  3. 238-692 éléments : TI-83 Premium CE + TI-Python (firmware tiers)
  4. 219-6042 éléments : HP Prime (version alpha)
  5. 217-496 éléments : Casio Graph 90+E / 35+E II / fx-CG50 / fx-9750/9860GIII
  6. 203-608 éléments : Casio Graph 75/85/95 / 35+E/USB / 35+E II / fx-9750GII/GIII / fx-9860G/GII/GIII (appli CasioPython)
  7. 176-509 éléments : TI-Nspire (appli MicroPython)
  8. 158-488 éléments : TI-83 Premium CE + TI-Python

NumWorks conforte ainsi sa 2nde place niveau richesse de sa solution Python.

Mais la richesse ne fait pas tout, il faut également voir la compatibilité, et nous y venons de suite.




2) compatibilité turtle

Go to top

Commençons déjà par tester les déplacements relatifs de la tortue. Voici par exemple avec la construction d'une rosace par rotation d'un polygone régulier :
Graph 35+E IIGraph 90+ENumWorksordi
Code: Select all
from turtle import *

def rosap(n1=12, n2=8, l=30):
  d1, d2 = 360//n1, 360//n2
  for i in range(n1):
    left(d1)
    for i in range(n2):
      forward(l)
      left(d2)

speed(0)
rosap()

La tortue travaillant en pixels, le code aurait besoin d'être adapté pour l'écran Graph 35+E II à plus faible définition. Mais à part cela, le code passe ici sans problème sur Casio, NumWorks et ordinateur. :)

Complexifions un petit peu la chose avec la fractale de Koch. Rajoutons également un levé de crayon (penup), un déplacement absolu (goto), ainsi que l'utilisation d'une des couleurs prédéfinies :
Graph 35+E IIGraph 90+ENumWorksordi
Code: Select all
from turtle import *

def koch(n, l):
  if n==0:
    forward(l)
  else:
    koch(n-1, l/3)
    left(60)
    koch(n-1, l/3)
    right(120)
    koch(n-1, l/3)
    left(60)
    koch(n-1, l/3)

pencolor('blue')
penup()
goto(-180, -50)
pendown()
koch(4, 360)

Ici pareil, compatibilité totale ! :)

Allons bien plus loin niveau couleurs avec maintenant un soleil :
Code: Select all
from math import exp
from turtle import *

for i in range(1,37):
  red=(exp(-0.5 * ((i-6)/12)**2))
  green=(exp(-0.5 * ((i-18)/12)**2))
  blue=(exp(-0.5 * ((i-30)/12)**2))
  pencolor([red, green, blue])
  for i in range(1, 5):
    forward(60)
    right(90)
    right(10)

Problème ici sur NumWorks, qui a fait le choix de ne pas utiliser le même système de coordonnées que le standard pour les composantes de couleurs RVB :
  • nombres flottants de 0.0 à 1.0 sur Casio et ordinateur
  • nombres entiers de 0 à 255 sur NumWorks et TI-83 Premium CE Edition Python
Mais nous disposons donc sur NumWorks de la nouvelle fonction colormode() pour choisir le système de coordonnées. Il suffira donc tout simplement de rajouter un appel colormode(1.) à tout script compatible Casio ou ordinateur pour le rendre également fonctionnel sur NumWorks ! :bj:

Par contre, chez Casio cette fonction certes inutile ici n'est pas présente. Il nous faut donc sécuriser son appel en interceptant toute erreur éventuelle.
Graph 35+E IIGraph 90+ENumWorksordi
Code: Select all
from math import exp
from turtle import *

try: colormode(1.)
except: pass

for i in range(1,37):
  red=(exp(-0.5 * ((i-6)/12)**2))
  green=(exp(-0.5 * ((i-18)/12)**2))
  blue=(exp(-0.5 * ((i-30)/12)**2))
  pencolor([red, green, blue])
  for i in range(1, 5):
    forward(60)
    right(90)
    right(10)

Poursuivons avec une coquille d'escargot en appliquant la même astuce, et l'appel à la fonction de tracé de cercle circle() :
Graph 35+E IIGraph 90+ENumWorksordi
Code: Select all
from turtle import *
from math import *

try: colormode(1.)
except: pass

penup()
goto(0, -20)
pendown()
for i in range(1,37):
  red=(exp(-0.5 * ((i-6)/12)**2))
  green=(exp(-0.5 * ((i-18)/12)**2))
  blue=(exp(-0.5 * ((i-30)/12)**2))
  mypencolor([red,green,blue])
  circle(50-i)
  right(10)

Sous réserve de cette toute petite astuce donc, compatibilité totale. :)

Faisons maintenant neiger quelques flocons de Koch, en faisant variant l'épaisseur du crayon avec pensize() :
Graph
35+E II
Graph
90+E
NumWorks
ordi
Code: Select all
from turtle import *

def koch(n, l):
  if n<=0:
    forward(l)
  else:
    koch(n-1, l/3)
    left(60)
    koch(n-1, l/3)
    right(120)
    koch(n-1, l/3)
    left(60)
    koch(n-1, l/3)

def flock(n, l):
  koch(n, l)
  right(120)
  koch(n, l)
  right(120)
  koch(n, l)

try: colormode(1.)
except: pass

l=80

penup()
goto(105,3)
left(120)
pendown()
pencolor((0, 0, 0))
flock(3, l)
left(120)

penup()
goto(105,-10)
right(60)
pendown()
pencolor((1, .5, 0))
flock(4, l)
right(60)

pensize(2)
penup()
goto(5,45)
right(60)
pendown()
pencolor((0, 0, 1))
flock(2, l)
right(60)

penup()
goto(-100,17)
left(120)
pendown()
pencolor((1, 0, 0))
flock(0, l)
left(120)

pensize(3)
penup()
goto(-100,-5)
right(60)
pendown()
pencolor((0, 1, 0))
flock(1, l)
right(60)

penup()
forward(400)

Les réglages d'épaisseur du crayon via pensize() semblent hélas totalement ignorés chez Casio.


Passons maintenant à une rosace construite par rotation d'un cercle, avec une écriture de texte via la fonction write().

Cette fonction standard n'était jusqu'à présent pas disponible dans le module turtle de NumWorks.

Mais maintenant c'est le cas alors voyons ce que ça donne :
Graph 35+E IIGraph 90+ENumWorksordi
12544
Code: Select all
from turtle import *

def rosac(r=50,n=10):
  d=360//n
  for k in range(n):
    circle(r)
    left(d)

r=50
rosac(r)
penup()
left(40)
fd(2.1*r)
right(40)
write('Rosace')

Petit écart chez Casio, avec le texte qui est écrit en prenant la position de la tortue comme coin supérieur gauche, alors que le standard la prend comme coin inférieur gauche.



Passons maintenant au script de démo dédié à la Casio Graph 90+E, avec inversion du sens de tracé des cercles.

Il suffisait pour cela de passer un rayon négatif à la fonction circle(), ce qui n'était hélas pas géré chez NumWorks et ignoré.

Mais maintenant apparemment désormais c'est bon : :bj:
Graph 35+E IIGraph 90+ENumWorksordi
12547
Code: Select all
from turtle import *

forward(40)
backward(100)
left(90)
forward(30)
right(60)
forward(60)
right(30)
forward(30)
penup()
forward(18)
right(90)
forward(60)
pendown()
right(30)
backward(30)
right(60)
forward(60)
pencolor("red")
penup()
goto(80,40)
right(140)
pendown()
circle(30)
penup()
goto(105,50)
pencolor("green")
pendown()
circle(-50)
penup()
pencolor("red")
right(21)
goto(60,20)
pendown()
circle(40,60)
penup()
pencolor("blue")
goto(-50,15)
setheading(0)
pendown()
write("CASIO")

Juste pour le plaisir, un dernier exemple avec les triangles de Sierpiński :
Graph
35+E II
Graph
90+E
Num
Works
ordi
Code: Select all
from turtle import *

def sierp(n, l):
    if n == 0:
        for i in range (0, 3):
            fd(l)
            left(120)
    if n > 0:
        sierp(n-1, l/2)
        fd(l/2)
        sierp(n-1, l/2)
        bk(l/2)
        left(60)
        fd(l/2)
        right(60)
        sierp(n-1, l/2)
        left(60)
        bk(l/2)
        right(60)

try: colormode(1.)
except: pass
penup()
backward(109)
left(90)
backward(100)
right(90)
pendown()
pencolor((1, 0, 0))
sierp(6, 217)
penup()
forward(400)




Conclusion

Go to top

Nous ne pouvons que saluer l'exceptionnelle réactivité de NumWorks, qui s'est empressé de colmater les quelques petites faiblesses que nous avions constatées dans son module turtle.

Nous obtenons ainsi sur la NumWorks version 14 un module turtle en excellente adéquation avec le standard et bénéficiant ainsi d'une non moins excellente compatibilité avec les scripts conçus pour le standard ou pour les plateformes visant à le respecter.
Une compatibilité peut-être un poil meilleure que celle de Casio.

Mais bref dans les deux cas, nous avons donc d'excellentes solutions qui permettront de concevoir et exécuter des scripts Python turtle dans une classe équipée de différents modèles avec un effort très minimal ! :bj:

Liens :
 
Ce compte ne reçoit pas de MP / This account does not receive PMs.
User avatar
AdminAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 1%
 
Posts: 460
Images: 28
Joined: 30 Aug 2011, 11:00
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby redgl0w » 13 Jun 2020, 18:03

D'ailleurs, hormis https://github.com/numworks/epsilon/pull/1519, qui rajoute le support de rayon négatif pour les cercles et https://github.com/numworks/epsilon/pull/1534 qui rajoute
Code: Select all
colormode()
dans ce dernier PR on retrouve un changement aussi assez majeur (même si ça n'a pas de rapport avec la compatibilité du module turtle), on peut utiliser des couleurs sur turtle comme on pouvait les utiliser sur kandinsky (via les "b", "blue", ...) et comme sur pyplot ("0.5" pour un gris (oui c'est un string et pas un float), "#ffffff" pour un blanc). Cette nouveauté est d'ailleurs réciproque (donc ces changements sont appliqués sur kandinsky et pyplot).
Image
User avatar
redgl0wVIP+
Niveau 13: CU (Calculateur Universel)
Niveau 13: CU (Calculateur Universel)
Level up: 62.7%
 
Posts: 285
Images: 0
Joined: 30 Oct 2019, 20:36
Location: Grenoble
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENSIMAG 1A
Twitter: Gl0wRed
GitHub: RedGl0w

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby critor » 13 Jun 2020, 19:44

Merci pour tes précieuses précisions. :)
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41980
Images: 15887
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Online

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby cent20 » 13 Jun 2020, 20:46

Aucune mention de la TI 83 PCE dans tous ces magnifiques tableaux comparatifs ?
Image
Enseignant de mathématiques et d'informatique. Spécialité NSI : Des projets, des tutos, mais aussi de l'art
Calculatrice NumWorks : Des applications et des jeux, scripts, 📙 Découvrir la NumWorks
User avatar
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 48.3%
 
Posts: 1047
Images: 67
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: nsi_xyz

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby Lionel Debroux » 13 Jun 2020, 20:53

La compatibilité des implémentations de TI laisse à désirer...
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.3%
 
Posts: 6865
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby critor » 13 Jun 2020, 20:56

cent20 wrote:Aucune mention de la TI 83 PCE dans tous ces magnifiques tableaux comparatifs ?


Tu parles du module complémentaire ce_turtl utilisable après la mise à jour 5.5.1 ?

Beaucoup plus éloigné du standard, donc beaucoup plus de travail d'exploration/adaptation à faire. Même pas sûr qu'il soit possible de faire une version compatible de certains exemples sans inclure littéralement 2 versions du code alternées avec un try/except.

Si j'en avais parlé, ça aurait pris une bonne partie de l'article tellement il y a de problèmes / écarts à traiter, et ça aurait franchement fait tache dans un article ciblant NumWorks.
Ce sera traité à part dans un article dédié.

Clairement, le respect du standard Python.turtle existant et donc du langage utilisé dans les livres scolaires n'était pas en bonne position dans le cahier des charges de TI.

Sympa pour les lycées où l'équipe pédagogique n'a pas accordé ses violons pour imposer un unique modèle, il y aura 2 langages Python.turtle incompatibles à enseigner, parfois même dans une même classe...
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41980
Images: 15887
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Online

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby cent20 » 14 Jun 2020, 01:07

critor wrote:Clairement, le respect du standard Python.turtle existant et donc du langage utilisé dans les livres scolaires n'était pas en bonne position dans le cahier des charges de TI.

Sympa pour les lycées où l'équipe pédagogique n'a pas accordé ses violons pour imposer un unique modèle, il y aura 2 langages Python.turtle incompatibles à enseigner, parfois même dans une même classe...


J'ai vraiment l'impression que le navire prend l'eau chez TI. Après, heureusement pour eux, une bonne partie ne s'en rendra pas compte car ils ne feront pas de python sur la calculatrice. Avoir imposé un langage unique, python, et se retrouver avec des constructeurs qui implémentent ça de manière non standard, c'est désespérant :(
Image
Enseignant de mathématiques et d'informatique. Spécialité NSI : Des projets, des tutos, mais aussi de l'art
Calculatrice NumWorks : Des applications et des jeux, scripts, 📙 Découvrir la NumWorks
User avatar
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 48.3%
 
Posts: 1047
Images: 67
Joined: 17 May 2012, 09:49
Location: Avignon
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: nsi_xyz

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby Adriweb » 14 Jun 2020, 02:57

Lot de consolation, pour de l'algorithmie de base, au moins, c'est du python pur sans lib, donc ca devrait etre bon pour tout le monde... Mais c'est clair que pour des libs externes, s'accorder les violons tous ensemble aurait été bénéfique. C'est presque le cas pour certaines choses mais pas vraiment chez TI...

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14744
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Online

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby Bobb » 14 Jun 2020, 10:35

On n'a pas utilisé le module turtle une seule fois en seconde, alors que dans ma classe, tout le monde avait une numworks sauf moi qui avait une ti.

Tous mes programmes sont disponibles ici

↳ Testez mon simulateur Android sur Ti-83 Premium CE et / ou Édition Python
Jetez un coup d'oeil à mon langage de programmation interprété Neon.

Image
User avatar
BobbProgrammeur
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 0.3%
 
Posts: 319
Joined: 19 Apr 2020, 12:37
Location: Morbihan
Gender: Male
Calculator(s):
MyCalcs profile
Class: ENS Rennes info

Re: NumWorks v14: exploration turtle + tests compatibilité

Unread postby critor » 14 Jun 2020, 10:43

C'est normal, c'est essentiellement pour la Seconde le temps de la transition Scratch-Python, et encore uniquement pour les enseignants qui souhaitent s'appuyer sur les acquis de collège en Scratch pour faire passer progressivement au Python.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41980
Images: 15887
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor


Return to News NumWorks

Who is online

Users browsing this forum: ClaudeBot [spider] and 6 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
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.
871 utilisateurs:
>841 invités
>23 membres
>7 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)