
Après 2 ans d'absence, voici cette année le grand retour du
concours de l'Avent
TI-Planet
! 
À l'affiche cette année,
l'énigme des 3 portes

À compter de ce 1er décembre sera publié chaque jour, éventuellement accompagné d'indices, un bout de code
Python
compatible avec ta calculatrice ou son émulateur :- Casio Graph 35+E IIfx-9750GIIIfx-9860GIII
- Casio Graph 90+E,fx-CG50
- HP Prime
- NumWorks(avec ou sansKhiCAS)
- TI-83 Premium CE Edition Python,TI-84 Plus CE-T Python Edition,TI-84 Plus CE Python
- TI-Nspire CX II(avec ou sansNdless+KhiCAS)
- TI-Nspire CX(avecNdless+KhiCAS)
Reviens chaque jour récupérer les indices et nouvelles lignes de code
Python
. Tente de les exécuter le plus rapidement possible, de les analyser, de tester des modifications ou ajouts afin de mieux les comprendre, etc. Tu auras alors une chance d'être parmi les 7 premiers à comprendre comment trouver, ouvrir et franchir l'une des 3 portes dès que le nombre d'indices et lignes de code seront suffisants, et ainsi gagner de formidables cadeaux de Noël ! 
Les
3
Casio
pourront choisir entre les lots suivants :- 1:1lotGraph 90+Ecalculatrice+ 1Casio Graph 90+Epack de+ 1goodiesCasio+ 1autocollantXcasautocollantau choix + 1TI-Planetpack degoodiesTI-Planète Casio
- 1:2lotsCasiocléau choix + 1USBd'émulationCasiocoque personnaliséeau choix + 1Casiopack de+ 1goodiesCasiocasquette ouau choix + 1T-shirtXcasaimantinau choix + 1TI-Planetpack degoodiesTI-Planète Casio
2
NumWorks
pourront choisir entre les lots suivants :- 1:1lotN0110calculatrice+ 1NumWorks N0110pack de+ 1goodiesNumWorks+ 1autocollantXcasautocollantau choix + 1TI-Planetpack degoodiesTI-Planète Casio
- 1:1lotNumWorkscoqueau choix + 1calendrier+ 1NumWorksautocollant+ 1NumWorkspack de+ 1goodiesNumWorkscasquette ouau choix + 1T-shirtXcasaimantinau choix + 1TI-Planetpack degoodiesTI-Planète Casio
Les
2
TI
pourront choisir entre les lots suivants :- 1:1lotCX2CAScalculatrice+ 1TI-Nspire CX II-T CASlicence logiciel+ 1TI-Nspire CASélèvepack de+ 1goodiesTI+ 1autocollantXcaspack degoodiesTI-Planète Casio
- 1:1lot83PCEcalculatrice+ 1TI-83 Premium CE Edition Pythongravure texte laserau choix + 1extension garantie+ 16 ansadaptateur+ 1USBclavierdédié + 1USBchargeur mural+ 1housseau choix + 1Wyngsfilm de protection écrandédié + 1Wyngspack de+ 1goodiesTIpack degoodiesTI-Planète CasioPour la gravure laser desTI-83 Premium CE Edition Python, l'inscription souhaitée sera à fournir sur un maximum de 22 caractères, sans caractères spéciaux. Attention à bien choisir pour ne pas le regretter plus tard, l'inscription une fois effectuée est définitive ; elle n'est plus ni modifiable ni effaçable.
Pour la housseWyngs, le choix est à faire entre les coloris suivants :- noir
- turquoise
- gris foncé
- rose
- gris clair
- rouge
- bleu
À noter que les 3 portes te seront accessibles peu importe la marque de la calculatrice ou de l'émulateur utilisé. Pour chaque porte, les gagnants pourront choisir l'un des lots associés dans l'ordre chronologique de passage. Rien ne t'empêche de franchir plusieurs portes, mais dans ce cas seul le premier passage gagnant comptera.
Les lots ainsi que leur acheminement te sont gracieusement offerts par , , , , , , , , , , .
Détail des packs de goodies communs accompagnant les lots :
- 1 styloau choixCasio
- 1 batterieUSBCasio
- 1 cahier d'activitésNumWorks SNT 2nde
- 1 sacau choixNumWorks
- 1 poster: formatNumWorksA2:(42×59,4 cm²)NumWorks N0110Comprendre le monde devient un jeu- plié
- 1 styloau choixTI
- 1 cléau choix :USB TI
- clé USB T3 Francebleue(2 Go)
- clé USB TI:(4 Go)TI-Primaire Plus,TI-Innovator Rover,TI-83 Premium CE,TIrouge avc inscription blanche
- clé USB TIrouge avec inscription noire(1 Mo)(promotionTI-Primaire Plusdéfectueuse)
- clé
- 1 cahier d'activitésau choix :Texas Instruments
- Enseignement de spécialité Mathématiques, par(1ère et Tle)Jean-Baptiste CivetetBoris Hanuš
- Algorithmique et programmation en Python, par(2nde)Jean-Baptiste CivetetBoris Hanuš
- Programmation en Python au lycée, par(LEGT)Ludovic DianaetJérôme Lenoir
- Projets Python pour l'enseignement SNT, par(2nde)Jean-Baptiste CivetetBoris Hanuš
- Algorithmique et programmation avec le robot TI-Innovator Rover et le Hub, par(2nde et 1ère ICN)Jean-Baptiste CivetetBoris Hanuš
- Algorithmique et programmation avec la TI-83 Premium CE, par(2nde ICN)Jean-Baptiste CivetetBoris Hanuš
- Algorithmique et programmation en mathématiques & physique-chimie, par(BAC Pro)Jérôme LenoiretLudovic Diana
- Livret d’activités en mathématiques, parBoris Hanuš,Laurent DidieretFlorent Girod
- Prise en main de la TI-83 Premium CE Edition Python, parCalcuso
- Activités Python avec la TI-83 Premium CE au lycée, par(lycée général et professionnel maths-physique-chimie)T3 France
- Livret d'activités pour la seconde professionnelle, par(2nde Pro)Jérôme Lenoir
- Livret d'activités pour la seconde professionnelle, par(2nde Pro)Jérôme Lenoir(nouvelle édition compatibleTI-82 Advanced Edition Python)
- Fiches d'activités TI-83 Premium CE Edition Python, par(2nde Pro)Vanessa Pavan
- Les applications TI-83 Premium CE, parJean-Louis Balas

énigme des 3 portes

Au commencement était le tile...
- Code: Select all
from math import ceil
def nop(*argv): pass
show, wait = nop, nop
neg_fill_rect = False
has_color = True
try: # NumWorks, NumWorks + KhiCAS, TI-Nspire CX + KhiCAS
import kandinsky
fill_rect = kandinsky.fill_rect
screen_w, screen_h = 320, 222
neg_fill_rect = True
except:
try: # TI
import ti_draw
try: # TI-Nspire CX II
ti_draw.use_buffer()
show = ti_draw.paint_buffer
except: # TI-83PCE/84+CE Python
wait = ti_draw.show_draw
screen_w, screen_h = ti_draw.get_screen_dim()
try: # check TI-83PCE/84+CE ti_draw 1.0 fill_rect bug
ti_draw.fill_rect(0,0,1,1)
def fill_rect(x, y, w, h, c):
ti_draw.set_color(c[0], c[1], c[2])
ti_draw.fill_rect(x, y, w, h)
except: # workaround
def fill_rect(x, y, w, h, c):
ti_draw.set_color(c[0], c[1], c[2])
ti_draw.fill_rect(x - 1, y - 1, w + 2, h + 2)
except:
try: # Casio Graph 90/35+E II, fx-9750/9860GIII, fx-CG50
import casioplot
casioplot.set_pixel(0, 0, (0, 0, 255))
col = casioplot.get_pixel(0, 0)
has_color = col[0] != col[2]
screen_w, screen_h = has_color and (384, 192) or (128, 64)
show = casioplot.show_screen
def fill_rect(x, y, w, h, c):
for dy in range(h):
for dx in range(w):
casioplot.set_pixel(x + dx, y + dy, c)
except:
try: # HP Prime
import hpprime
screen_w, screen_h = hpprime.grobw(0), hpprime.grobh(0)
hpprime.dimgrob(1, screen_w, screen_h, 0)
def col3_2_rgb(c, bits=(8,8,8), bgr=1):
return c[2*bgr]//2**(8 - bits[0]) + c[1]//2**(8 - bits[1])*2**bits[0] + c[2*(not(bgr))]//2**(8-bits[2])*2**(bits[0] + bits[1])
def fill_rect(x, y, w, h, c):
hpprime.fillrect(1, x, y, w, h, col3_2_rgb(c), col3_2_rgb(c))
def show():
hpprime.strblit(0, 0, 0, screen_w, screen_h, 1)
def wait():
while hpprime.keyboard(): pass
while not(hpprime.keyboard()): pass
except:
pass
if not neg_fill_rect:
_fill_rect = fill_rect
def fill_rect(x, y, w, h, c):
if w < 0:
x += w
w = -w
if h < 0:
y += h
h = -h
_fill_rect(x, y, w, h, c)
def draw_image(rle, x0, y0, w, pal, zoomx=1, zoomy=1, itransp=-1):
if not has_color:
pal = list(pal)
g_min, g_max = 255, 0
for k in range(len(pal)):
c = pal[k]
g = 0.299*c[0] + 0.587*c[1] + 0.114*c[2]
g_min = min(g_min, g)
g_max = max(g_max, g)
pal[k] = g
for k in range(len(pal)):
pal[k] = pal[k]<(g_min + g_max) / 2 and (0,0,0) or (255,255,255)
i, x = 0, 0
x0, y0 = int(x0), int(y0)
nvals = len(pal)
nbits = 0
nvals -= 1
while(nvals):
nvals >>= 1
nbits += 1
maskval = (1 << nbits) - 1
maskcnt = (0xFF >> nbits >> 1) << nbits
while i<len(rle):
v = rle[i]
mv = v & maskval
c = (v & maskcnt) >> nbits
if (v & 0b10000000 or nbits == 8):
i += 1
c |= rle[i] << (7 - nbits + (nbits == 8))
c = (c + 1)
while c:
cw = min(c, w - x)
if mv != itransp:
fill_rect(x0 + x*zoomx, y0, cw*zoomx, zoomy, pal[mv])
c -= cw
x = (x + cw) % w
y0 += x == 0 and zoomy
i += 1
palettes = (
(
(247,176,36),(247,207,73),(231,89,0),(247,131,8),
),
)
images = (
(
b"\b\x05\n?\n\x05\x18\x05\n7\n\x05\x20\x05\n/\n\x05(\x05\n'\n\x050\x05\n\x1f\n\x058\x05\n\x17\n\x05@\x05\n\x0f\n\x05H\x05\n\a\n\x05P\x05\x16\x05X\x05\x0e\x05`\x05\x06\x05d\a\x06\a`\a\x02\x04\x02\aX\a\x02\x0c\x02\aP\a\x02\x04\a\x04\x02\aH\a\x02\x04"
b"\x0f\x04\x02\a@\a\x02\x04\x17\x04\x02\a8\a\x02\x04\x1f\x04\x02\a0\a\x02\x04'\x04\x02\a(\a\x02\x04/\x04\x02\a\x20\a\x02\x047\x04\x02\a\x18\a\x02\x04?\x04\x02\a\x10\a\x02\x04G\x04\x02\a\b\a\x02\x04O\x04\x02\a\x00\a\x02\x04W\x04\x02\x0b\x02\x04_\x04"
b"\x02\x03\x02\x04g\x04\x0eg\n\x01\n_\n\t\nW\n\x05\x00\x05\nO\n\x05\b\x05\nG\n\x05\x04"
),
)
draw_image(images[0], 0, 0, 32, palettes[0])
show()
wait()
Ressources
:Mises à jour conseillées
:- Système 3.60pourGraph 90+E / fx-CG50avec
- Système 3.50pourGraph 35+E II / fx-9750/9860GIIIavecWindows
Emulateurs
:- Casio fx-CG Manager:Graph 90+E / fx-CG50 3.60pourWindowsMac
- Casio fx-Manager Plus:Graph 35+E II / fx-9750/9860GIII 3.50pourWindows(période d'essai gratuite sans engagement de 90 jours)
Simulateurs
:- Graph 90+E 3.60pourWindows
- Graph 35+E II 3.50pourWindows(nécessite la cléUSBd'émulation officielle - si tu en as besoin, nous pouvons t'en envoyer une dans la limite des 10 premières demandes)
Transfert de données
:Simulateur
:- logiciel HP Prime Virtual Calculator 2.1.14596pourWindows 64-bits
- logiciel HP Prime Virtual Calculator 2.1.14592pourWindows 32-bits
Transfert de données et mises à jour conseillées
:Simulateurs + transfert de données + mises à jour
:- https://getomega.dev/ide/ pour navigateurs Chromium / WebUSB
- https://my.numworks.com/python pour navigateurs Chromium / WebUSB
Transfert de données + mises à jour
:- https://www-fourier.univ-grenoble-alpes.fr/~parisse/nws.html pour navigateurs Chromium / WebUSB
Mises à jour conseillées
:- Système 5.3.0pourTI-Nspire CX II CAS
- Système 5.3.0pourTI-Nspire CX II-T
- Système 5.3.0pourTI-Nspire CX II
Simulateurs + transfert de données
:- TI-Nspire CX CAS+TI-Nspire CX 5.3.2édition enseignant pour(période d'essai gratuite sans engagement de 90 jours)
- TI-Nspire CX CAS 5.3.2édition élève pour(période d'essai gratuite sans engagement de 30 jours)
- TI-Nspire CX 5.3.2édition élève pour(période d'essai gratuite sans engagement de 30 jours)
- TiLP-II 1.18pour(gratuit)
Transfert de données
:Mises à jour conseillées
:- Système 5.3.0pourTI-Nspire CX II CAS(égalementCX II-T CASetCX II-C CAS)
- Système 5.3.0pourTI-Nspire CX II-T
- Système 5.3.0pourTI-Nspire CX II
Attention, la dernière mise à jour
5.3.2
une fois installée rend à ce jour définitivement impossible l'installation de Ndless
et des utilitaires qui suivent.Ajouts relatifs au Python
:Simulateurs + transfert de données
:- TI-Nspire CX CAS+TI-Nspire CX 5.3.2édition enseignant pour(période d'essai gratuite sans engagement de 90 jours)
- TI-Nspire CX CAS 5.3.2édition élève pour(période d'essai gratuite sans engagement de 30 jours)
- TI-Nspire CX 5.3.2édition élève pour(période d'essai gratuite sans engagement de 30 jours)
- TiLP-II 1.18pour(gratuit)
Transfert de données
:Mises à jour conseillées
:- Système 4.5.4pourTI-Nspire CX CAS
- Système 4.5.4pourTI-Nspire CX
Attention, la dernière mise à jour
4.5.5
une fois installée rend à ce jour définitivement impossible l'installation de Ndless
et des utilitaires qui suivent.Ajouts relatifs au Python
:Emulateur
:Simulateurs + transfert de données
:- TI-Nspire CX CAS+TI-Nspire CX 5.3.2édition enseignant pour(période d'essai gratuite sans engagement de 90 jours)
- TI-Nspire CX CAS 5.3.2édition élève pour(période d'essai gratuite sans engagement de 30 jours)
- TI-Nspire CX 5.3.2édition élève pour(période d'essai gratuite sans engagement de 30 jours)
Transfert de données
:- N-Linkpour navigateursChromium / WebUSB
- TI-Nspire Computer Link 3.9pour(gratuit)
- tutoriel TI-Nspire Computer Link(gratuit)
- TiLP-II 1.18pour(gratuit)
Mises à jour conseillées
:- Système 5.7.0pourTI-83 Premium CE
- Système 5.7.0pourTI-84 Plus CE
Emulateurs
:- TI-SmartView CE:TI-83 Premium CE 5.5pour
- TI-SmartView CE:TI-84 Plus CE 5.6pour
- TI-SmartView CE:TI-83 Premium CE 5.5pourWindows(nécessite la cléUSBd'émulation officielle)
Transfert de données
:- pour navigateurs Chromium / WebUSB
- TI-Connect CE 5.6.3pour
- tutoriel TI-Connect CE
- TiLP-II1.18pour(gratuit)