Un démineur en python pour la NumWorks
Re: Un démineur en python pour la NumWorks
salut, super script juste par curiosité pourquoi cela ne marche pas sur omega
81151a1669ebd695e837f304a0d8ec79
-
jules.pyGénéreux
Niveau 9: IC (Compteur Infatigable)- Posts: 11
- Joined: 24 Oct 2019, 16:47
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: 5ème
Re: Un démineur en python pour la NumWorks
cent20 wrote:demineur.py script de Arthur Jacquin, annoncé ici, Lien workshop
Le lien workshop semble ne plus marcher, erreur 404 :
https://workshop.numworks.com/python/ar ... n/demineur
Que se passe-t-il ?
Merci.
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 41976
- Images: 15730
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Un démineur en python pour la NumWorks
Changement de nom ?
Il est ici non ? https://workshop.numworks.com/python/ar ... inesweeper
Il est ici non ? https://workshop.numworks.com/python/ar ... inesweeper
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
-
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)- Posts: 1047
- Images: 67
- Joined: 17 May 2012, 09:49
- Location: Avignon
- Gender:
- Calculator(s):→ MyCalcs profile
- Twitter: nsi_xyz
Re: Un démineur en python pour la NumWorks
Merci.
Ben faut pas changer les noms, du moins avec le workshop officiel.
ça casse tous les liens déjà partagés.
C'est l'un de ses principaux défauts.
Ben faut pas changer les noms, du moins avec le workshop officiel.
ça casse tous les liens déjà partagés.
C'est l'un de ses principaux défauts.
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 41976
- Images: 15730
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: Un démineur en python pour la NumWorks
Cet article est très intéressant !
J'ai passé un paquet d'heures à optimiser mes derniers scripts Python (des jeux pour la NumWorks, que l'on peut retrouver sur le site, dans les Jeux NumWorks justement) et j'ai découvert des choses intéressantes. Je n'ai pas utilisé de double chevron "<<" par contre.
Le problème du blanc semble avoir été résolu pour
On peut même remplacer ça par :
J'ai passé un paquet d'heures à optimiser mes derniers scripts Python (des jeux pour la NumWorks, que l'on peut retrouver sur le site, dans les Jeux NumWorks justement) et j'ai découvert des choses intéressantes. Je n'ai pas utilisé de double chevron "<<" par contre.
Le problème du blanc semble avoir été résolu pour
fill_rect
mais pas encore pour draw_string
, en tous cas. Le texte affiché avec le paramètre 'white'
ou le triplet (255,255,255)
n'est pas tout à fait blanc et est visible. Ça donne des caractères gris très clair, un peu fantomatiques. https://github.com/numworks/epsilon/issues/1643Bisam wrote:Plus loin, on trouve. J'aurais plutôt écrit :
- Code: Select all
if (v-42)%100 == 0: gps(x,y,0)
else: gps(x,y,9)à la place de ces deux lignes.
- Code: Select all
gps(x,y, 0 if v%100 == 42 else 9)
On peut même remplacer ça par :
- Code: Select all
gps(x,y,9*(v%100 != 42))
-
AfyuVIP++
Niveau 16: CC2 (Commandeur des Calculatrices)- Posts: 405
- Images: 149
- Joined: 30 Oct 2019, 19:17
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: plutôt, oui :)
Re: Un démineur en python pour la NumWorks
Au niveau performance vos codes sont équivalents ou ils apportent des gains ?
-
DogmEcrivain
Niveau 12: CP (Calculatrice sur Pattes)- Posts: 117
- Images: 7
- Joined: 14 Nov 2019, 18:53
- Location: Lyon, France
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: Terminale Math NSI
- GitHub: Tim-ats-d
Re: Un démineur en python pour la NumWorks
Afyu wrote:On peut même remplacer ça par :le test d'inégalité renvoie un booléen qui est alors transformé en 0 ou en 1 lors de la multiplication.
- Code: Select all
gps(x,y,9*(v%100 != 42))
C'est vrai mais là, ça ressemble plus à du C, et on perd tout l'intérêt du Python, à savoir la lisibilité du code !
Quant aux performances, je suis à peu près persuadé que l'opérateur ternaire qu'est
truc if test else machin
est interprété exactement de la même façon que le "recast" de booléen en "integer".-
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)- Posts: 5670
- Joined: 11 Mar 2008, 00:00
- Location: Lyon
- Gender:
- Calculator(s):→ MyCalcs profile
Re: Un démineur en python pour la NumWorks
Bisam wrote:Afyu wrote:On peut même remplacer ça par :le test d'inégalité renvoie un booléen qui est alors transformé en 0 ou en 1 lors de la multiplication.
- Code: Select all
gps(x,y,9*(v%100 != 42))
C'est vrai mais là, ça ressemble plus à du C, et on perd tout l'intérêt du Python, à savoir la lisibilité du code !
Certes, mais la mémoire de la NumWorks n'est pas extraordinaire non plus, alors c'est un moyen d'optimiser (en raccourcissant) ses scripts pour pouvoir tous les mettre sur la calculatrice et partir en vacances avec.
Mais effectivement, ça nuit grandement à la lisibilité du code, et il peut être intéressant de garder une version pas optimisée mais lisible (et éventuellement commentée !) à disposition des curieux
-
AfyuVIP++
Niveau 16: CC2 (Commandeur des Calculatrices)- Posts: 405
- Images: 149
- Joined: 30 Oct 2019, 19:17
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: plutôt, oui :)
Re: Un démineur en python pour la NumWorks
Afyu wrote:
Certes, mais la mémoire de la NumWorks n'est pas extraordinaire non plus, alors c'est un moyen d'optimiser (en raccourcissant) ses scripts pour pouvoir tous les mettre sur la calculatrice et partir en vacances avec.
Mais effectivement, ça nuit grandement à la lisibilité du code, et il peut être intéressant de garder une version pas optimisée mais lisible (et éventuellement commentée !) à disposition des curieux
De ce que j’ai compris de Critor - en espérant qu’il me pardonnera si j’ai compris de travers - ce n’est pas parce que le script est court qu’il utilise peu de place en mémoire de stockage.
Au début, je mettais : p = print pour gratter des octets, mais à l’exécution j’ai défini une variable de plus, donc mauvais deal...
Le vrai progrès ça sera le jour où les scripts seront stockés dans les 8mo et pas dans la RAM !
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
-
cent20VIP++
Niveau 14: CI (Calculateur de l'Infini)- Posts: 1047
- Images: 67
- Joined: 17 May 2012, 09:49
- Location: Avignon
- Gender:
- Calculator(s):→ MyCalcs profile
- Twitter: nsi_xyz
Re: Un démineur en python pour la NumWorks
cent20 wrote:Afyu wrote:
Certes, mais la mémoire de la NumWorks n'est pas extraordinaire non plus, alors c'est un moyen d'optimiser (en raccourcissant) ses scripts pour pouvoir tous les mettre sur la calculatrice et partir en vacances avec.
Mais effectivement, ça nuit grandement à la lisibilité du code, et il peut être intéressant de garder une version pas optimisée mais lisible (et éventuellement commentée !) à disposition des curieux
De ce que j’ai compris de Critor - en espérant qu’il me pardonnera si j’ai compris de travers - ce n’est pas parce que le script est court qu’il utilise peu de place en mémoire de stockage.
Au début je mettais : p = print pour gratter des octets, mais à l’exécution j’ai défini une variable de plus, donc mauvais deal...
Le vrai progrès ça sera le jour où les scripts seront stockés dans les 8mo et pas dans la RAM !
Certes, mais tu ne les exécutes pas tous en même temps (enfin, j'espère ! ). Par contre, si tu pars en vacances sans ordi, et sans Internet, il faut que tu les mettes tous sur ta calculatrice en même temps, avant de partir.
Si j'ai bien compris, à l'exécution, le script est intégralement copié dans la RAM, donc plus le script est court et plus tu y gagnes. Mais si tu définis une variable supplémentaire, alors ça prend plus de place dans le stack et dans le heap (je ne me trompe pas ?). Dilemme !
-
AfyuVIP++
Niveau 16: CC2 (Commandeur des Calculatrices)- Posts: 405
- Images: 149
- Joined: 30 Oct 2019, 19:17
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: plutôt, oui :)
Return to Programmation Python
Who is online
Users browsing this forum: ClaudeBot [spider] and 1 guest