π
<-
Chat plein-écran
[^]

News 2024

News 2023
Août (2)
Juin (3)
Mai (4)
Avril (1)

News 2022
Août (3)
Juin (1)
Mai (1)
Mars (2)

News 2021
Août (12)
Juin (2)
Mai (7)
Avril (3)
Mars (1)

News 2020
Août (15)
Juin (7)
Mai (7)
Avril (19)
Mars (4)

News 2019
Août (4)
Juin (6)
Mai (1)
Avril (3)
Mars (1)

News 2018
Août (11)
Juin (3)
Mai (10)
Avril (2)
Mars (4)

News 2017
Août (15)
Juillet (18)
Juin (1)
Mai (7)
Avril (4)
Mars (7)

News 2016
Août (17)
Juillet (16)
Juin (2)
Mai (2)
Avril (1)
Mars (5)

News 2015
Août (25)
Juin (4)
Mai (9)
Avril (4)
Mars (10)

News 2014
Août (4)
Juin (11)
Mai (12)
Avril (9)
Mars (12)
Janvier (13)

News 2013
Octobre (11)
Août (5)
Juin (9)
Mai (12)
Avril (10)
Mars (7)
Janvier (10)

News 2012
Août (12)
Juillet (10)
Juin (13)
Mai (22)
Avril (8)
Mars (5)

News 2011
Octobre (23)
Août (1)
Juin (29)
Mai (11)
Avril (5)
Mars (3)

News 2010
Août (2)
Juin (5)

News 2009
Août (1)
Juin (1)
Mai (1)
Avril (1)
Mars (1)

QCC 2020 épisode 0 : liste des participants

Nouveau messagede critor » 01 Aoû 2020, 20:22

Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 0 - Liste des participants

540912721Tu rentres au lycée ou prévois de changer de calculatrice ? Il te faut donc une calculatrice graphique avec mode examen. La calculatrice graphique c'est comme ton smartphone. C'est ton outil numérique personnel qui t'accompagnera jusque dans la salle d'examen, car à la différence d'un smartphone elle ne dispose pas des possibilités de communication sans fil strictement interdites.

Comme chaque année depuis la rentrée 2015, nous te préparons une série de tests aboutissant à un classement des meilleures calculatrices graphiques conformes à la réglementation actuelle, et ce qu'elles soient disponibles sur le marché du neuf ou de l'occasion. Comme à l'habitude, ce classement sera ponctué de plusieurs recommandations selon les différentes orientations.
Plusieurs nouveaux protocoles de tests bien plus précis ont été conçus pour cette année, tu verras ça. ;)

Un classement qui chez nous est totalement désintéressé. Contrairement à d'autres sites de classement nous ne sommes pas vendeurs et n'avons à coeur que de te conseiller au mieux de tes besoins et intérêts, puisque c'est ensuite nous qui pendant toute l'année scolaire aiderons à l'utilisation de ces modèles tous constructeurs confondus. ;)

Les situations sont assez diverses concernant l'utilisation de la calculatrice à partir de cette année, en fonction des orientations décidées pour la Première puis pour la Terminale :
  • calculatrice autorisée en mode examen aux épreuves terminales des spécialités scientifiques du Baccalauréat Général et Technologique (Mathématiques, Physique-Chimie, ...)
  • calculatrice autorisée en mode examen aux épreuves communes scientifiques de contrôle continu en Première et Terminale du Baccalauréat Général et Technologique (Mathématiques, Physique-Chimie, Enseignement Scientifique, ...)
  • calculatrice normalement autorisée en mode examen aux devoirs surveillés censés te préparer à ces épreuves dans ces mêmes enseignements
  • et enfin pour les seuls enseignements non concernés par des épreuves terminales ou communes l'enseignant fait ce qu'il veut, pouvant autoriser la calculatrice avec ou sans mode examen
Nous tiendrons donc compte des capacités de la calculatrice à la fois en mode examen et hors mode examen.

Attention, le mode examen qui sera donc activé pour la première fois de façon nationale aux épreuves d'examens 2020-2021, t'empêche d'utiliser plusieurs fonctionnalités de ta calculatrice : /!
  • il interdit l'accès à toutes les fonctionnalités non officielles, c'est-à-dire en gros à tout ce que tu as pu rajouter par toi-même
  • et sur certains modèles il verrouille de plus l'accès à certaines fonctionnalités officielles pourtant présentes à l'achat et parfois même décrites au verso de l'emballage

Tous les modèles ne se valent pas non plus, nombre d'entre eux conviennent mieux à certaines orientations que d'autres, et le plus cher n'est absolument pas une garantie du meilleur choix.
Contrairement à tes prédécesseurs il te sera de plus impossible de lisser ces inégalités ou corriger un mauvais choix en téléchargeant des programmes gratuits chez nous, car ils seront rendus inaccessible par le mode examen. :#non#:

Il est donc essentiel pour toi de faire dès maintenant le choix du bon modèle en fonction de tes hypothèses d'orientation future, afin d'éviter d'avoir à repayer pour une deuxième calculatrice en cours de scolarité.

Nous aurions aimé inclure à ce classement au moins en préversion la mise à jour rajoutant Python aux TI-Nspire CX II qui devait initialement sortir pour septembre 2020, ainsi que celle pour HP Prime, d'où son lancement un peu tardif.

Jusqu'à présent nous n'avons hélas pas pu obtenir de réponse favorable, peut-être du retard a-t-il été pris à cause de l'épidémie...

Mais nous mettrons à jour les tests concernés déjà publiés si jamais nous obtenons des mises à jour en privé ou en public d'ici la rentrée, ainsi qu'à la rigueur encore pendant le mois de septembre (période d'acquisition).

Les calculatrices en compétition dans notre classement cette année sont donc au nombre de 26 :
  • Casio fx-92+ Spéciale Collège
  • Casio Graph 25+E - version logicielle 2.09
  • Casio Graph 25+E II - version logicielle 2.20
  • Casio Graph 35+E - version logicielle 2.10
  • Casio Graph 35+E II - version logicielle 3.30
  • Casio Graph 75+E - version logicielle 2.09
  • Casio Graph 90+E - version logicielle 3.40
  • Casio fx-CP400+E - version logicielle 2.01.7000
  • HP Prime - édition matérielle G2 - version logicielle 14433
  • NumWorks - édition matérielle N0110 - version logicielle 14.4.0
  • Esquisse GCEXFR
  • Lexibook GC3000FR
  • TI-82 Advanced - version logicielle 5.0
  • TI-84 Plus T - version logicielle 5.1
  • TI-83 Premium CE - version logicielle 5.5.1 5.5.2
  • TI-83 Premium CE Edition Python - version logicielle 5.5.1 5.5.2
  • TI-84 Plus CE-T - éditions matérielles M+ - version logicielle 5.5.5 5.6
  • TI-84 Plus CE-T Python Edition - version logicielle 5.5.5 5.6
  • TI-Nspire - version logicielle 3.9.0.463 (avec clavier Nspire uniquement, le clavier 84 Plus n'étant pas conforme)
  • TI-Nspire TouchPad - version logicielle 3.9.0.463 (avec clavier Nspire uniquement, le clavier 84 Plus n'étant pas conforme)
  • TI-Nspire CAS TouchPad - version logicielle 3.9.0.463
  • TI-Nspire CX / TI-Nspire CX-C - éditions matérielles CR4+ - version logicielle 4.5.1.12
  • TI-Nspire CX CAS / TI-Nspire CX-C CAS - éditions matérielles CR4+ - version 4.5.1.12
  • TI-Nspire CX II - version logicielle 5.1.3.73
  • TI-Nspire CX II-T - version logicielle 5.1.3.73
  • TI-Nspire CX II CAS / TI-Nspire CX II-T CAS / TI-Nspire CX II-C CAS - version logicielle 5.1.3.1683
9363518112581840249549668718458411140384935599683254621132555701269911506

Nous tiendrons également compte d'éléments logiciels préchargés ou rajoutables, en te précisant si ils restent accessibles en mode examen ou pas :
  • éléments officiels préchargés du constructeur
  • éléments officiels rajoutables du constructeur
  • éléments tiers rajoutables lorsque de qualité professionnelle (Omega, KhiCAS, ...)

Quels modèles auront l'honneur de gravir les marches du podium cette année et dans quel ordre ? :favorite:
Quels sont les pièges ou même arnaques à éviter ? :troll:

Nous te dirons tout et même plus encore.

En tous cas 2019-2020 fut une année scolaire extrêmement riche en terme de mises à jour logicielles et de production d'éléments, les différents constructeurs et acteurs se sont presque tous surpassés; il faut s'attendre à quelques surprises, parfois même en mode examen... ;)
Lien vers le sujet sur le forum: QCC 2020 épisode 0 : liste des participants (Commentaires: 58)

QCC 2020 épisode 1 : poids et mesures

Nouveau messagede critor » 03 Aoû 2020, 21:49

5409
Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 1 - Poids et mesures


Dans l'épisode d'aujourd'hui nous allons nous intéresser à ton confort, avec les poids et tailles des différents modèles conformes ou se disant conformes 2021, ainsi que de leur écran.


Sommaire :
  1. Poids et mesures des boîtiers
  2. Mesures des écrans
  3. Résumé données


1) Poids et mesures des boîtiers :Go to top

12730Les constructeurs fournissent les poids de leurs calculatrices, mais nous ignorons si elles sont pesées dans les mêmes conditions. Nous ressortons donc la balance de cuisine et allons effectuer deux mesures :
  • en CNT, Conditions Normales de Transport : la calculatrice est ici accompagnée de tous ses accessoires essentiels (piles ou batterie, clavier lorsque amovible, ...) ainsi que de tous les accessoires pouvant être rangés par fixation sur son boîtier (couvercle, stylet tactile si concernée, ...).
  • en CNU, Conditions Normales d'Utilisation : la calculatrice est ici munie de ses seuls accessoires essentiels.
12725Quant aux mesures des dimensions des boîtiers de nos calculatrices, finie la méthode artisanale au triple décimètre cette année, méthode qui avait le défaut d'une marge d'erreur de l'ordre du millimètre, bien gênant lorsque nombre de modèle ont à peu près le même format à quelques millimètres près. Nous utiliserons donc un tout nouveau protocole cette année munis de notre dernier invertissement, un pied à coulisse numérique.

Niveau protocole, dans chacune des trois dimensions de la calculatrice nous écarterons le pied à coulisse jusqu'à ce que le boîtier puisse le traverser sans accrocher, retenant ainsi la dimension la plus grande à chaque fois.

C'est-à-dire notamment que cette année, nous comptons les patins et touches dans l'épaisseur des calculatrices.

Bien plus fiable et précis cela nous permet de traiter à égalité tous les modèles, et donc d’exhiber des comparaisons pertinentes. :)

5599En CNT, les TI-82 Advanced et TI-84 Plus T pèsent 275 g pour une taille de 19,26 × 8,93 × 2,7 = 464,474 cm³.

Une fois le couvercle retiré et donc en CNU, elles passent à 236 g pour 19,04 × 8,41 × 2,36 = 377,839 cm³.

11325Les dernières TI-83 Premium CE Edition Python et TI-84 Plus CE-T Python Edition sont bien plus agréables à transporter, avec 191 g pour 19,22 × 8,67 × 2,00 = 333,292 cm³.

En CNU il s'agit même des calculatrices que tu glisseras le plus facilement dans ta poche, avec seulement 8,19 cm de largeur. Plus précisément 171 g pour 18,97 × 8,19 × 1,62 = 251,717 cm³.

Les anciens modèles TI-83 Premium CE et TI-84 Plus CE-T utilisent le même format en à peine plus léger, 201 g en CNT et 161 g en CNU.

Toutefois, l'ancienne TI-83 Premium CE aura besoin du module externe TI-Python pour permettre de saisir et tester ses scripts Python en classe, le module étant interdit aux examens. Cela rajoute 20 g ou même 33 g si l'on compte le câble que tu devras également trimballer, et occupera un espace de rangement supplémentaire dans ton sac de 4,06 × 3,60 × 2,19 = 32,009 cm³.

Passons aux calculatrices TI-Nspire monochromes. Munies de leurs oreilles caractéristiques ce sont les calculatrices les plus grandes, battant les records de largeur et épaisseur avec 20,19 × 10,06 × 2,67 = 541,173 cm³ en CNT (oui oui, plus d'un demi-litre...), et 19,95 × 10,06 × 2,42 = 485,589 cm³.

Les modèles TouchPad munis du pavé tactile sont même les calculatrices les plus lourdes, avec pas moins de 366 g en CNT et 329 g en CNU.

L'ancienne TI-Nspire non tactile quant à elle est un peu plus légère malgré le même format, 359 g en CNT et 322 g en CNU.

Les TI-Nspire CX alourdissent ton sac de 238 g en CNT pour 194 g en CNU.

Elles occupent 19,35 × 9,18 × 2,10 = 373,068 cm³ en CNT et 19,11 × 8,73 × 1,63 = 271,919 cm³ en CNU.

84025181Les anciennes Casio Graph 35+E et Graph 25+E utilisent un boîtier tout en rondeurs qui finalement rentre dans un pavé de 18,25 × 8,74 × 2,66 = 427,307 cm³ en CNT et 18,01 × 8,74 × 2,24 = 352,414 cm³.

La Graph 35+E pèse 244 g en CNT et 201 g en CNU.

La Graph 25+E un peu moins car dépourvue de la connectique USB, 242 g en CNT et 199 g en CNU.

12581Les Casio Graph 35+E II et Graph 25+E II utilisent un même boîtier au format 17,80 × 8,88 × 2,51 = 396,629 cm³ en CNT et 17,57 × 8,36 × 2,09 = 307,025 cm³ en CNU.

La Graph 35+E II pèse 236 g en CNT et 188 g en CNU.

La Graph 25+E II un peu moins car ici encore dépourvue du port USB, 234 g en CNT et 186 g en CNU.

4954La Casio Graph 75+E n'a elle non plus rien de rectangulaire. C'est même la calculatrice la plus épaisse en CNT avec 18,65 × 9,11 × 2,72 = 462,008 cm³, pour 18,42 × 9,11 × 2,26 = 379,242 cm³ en CNU.

Elle alourdira ton sac de 258 g, pour 214 g en CNU.

9668La Casio Graph 90+E est la calculatrice couleur la plus large et la plus épaisse en CNT, ce dernier record venant essentiellement de son alimentation par piles AAA. 18,89 × 9,56 × 2,53 = 456,937 cm³, pour 18,89 × 8,93 × 2,04 = 344,159 cm³ en CNU.

Elle pèse 275 g en CNT pour 223 g en CNU.

7184Voici enfin la Casio fx-CP400+E ou le Goliath des calculatrices, la plus grosse et la plus lourde parmi les modèles couleurs.

20,90 × 9,44 × 2,45 = 483,421 cm³ pour 359 g en CNT.
20,90 × 8,96 × 2,17 = 400,880 cm³ pour 308 g en CNU.

5841La HP Prime occupe 18,46 × 9,30 × 1,79 = 307,354 cm³ pour 225 g en CNT.

En CNU elle passe à 18,13 × 8,50 × 1,42 = 218,781 cm³ pour 180 g.

8493Petit interlude maintenant avec les Lexibook GC3000FR et Esquisse GCEXFR qui, crois-le ou pas, ont elles aussi quelque chose de remarquable.

En CNT c'est du 18,74 × 8,89 × 2,54 = 423,115 cm³ pour seulement 206 g.
En CNU ça donne 18,52 × 8,30 × 2,26 = 347,379 cm³ pour seulement 165 g.

Le record dans tout ça ? La masse volumique qui en découle, respectivement 0,475 g/cm³ et 0,487 g/cm³, de très loin la plus faible de toutes les calculatrices ! :o

Relativement aux autres modèles, tu auras l'impression de tenir entre tes mains une boîte vide... :troll:

Voici enfin notre petit bijou, la NumWorks, à l'extrême opposé. C'est en effet à la fois la calculatrice la plus fine et la plus petite, un espace ici fort bien rempli, un concentré de technologie.

En CNT nous obtenons 16,05 × 8,53 × 1,52 = 208,137 cm³ pour 163 g.
En CNU nous avons 16,05 × 8,21 × 1,17 = 154,200 cm³ pour 129 g.

9363Et pour finir, la Casio fx-92+ Spéciale Collège est la calculatrice la plus légère et la moins large.

En CNT c'est du 16,76 × 8,18 × 2,18 = 298,853 cm³ pour 138 g.
En CNU c'est ici 16,57 × 7,71 × 1,52 = 194,140 cm³ pour 129 g.



2) Mesures des écrans :Go to top

Mais, pour une calculatrice, être petit n'a pas que des avantages, et être gros n'a pas que des inconvénients. En effet une grande taille permet, en théorie, un plus grand écran.

Passons donc maintenant aux mesures d'écran. Nous ne tiendront compte que de la zone utile de l'écran c'est-à-dire pouvant afficher quelque chose, excluant donc les bordures notamment sur les modèles monochromes.

Avec 2,39" pour la plus petite diagonale d'écran, l'ancienne Casio Graph 25+E nous présente l'un des plus petits de toutes les calculatrices graphiques : 5,45 × 2,70 = 14,72 cm² de surface affichable.

Relativement à la surface de son boîtier, c'est également le pire rapport, seuls 9,35% de la surface du boîtier servent effectivment à afficher quelque chose.

113962,42" de diagonale, c'est cette fois-ci la Casio fx-92+ Spéciale Collège avec son écran allongé horizontalement de 5,75 × 2,15 = 12,36 cm², soit cette fois-ci bien le plus petit toutes calculatrices confondues.

Un affichage sur donc 9,68% de la face avant de son boîtier.

2,48", c'est maintenant les TI-82 Advanced et TI-84 Plus T.

Ecran de 5,25 × 3,50 = 18,38 cm² soit le plus étroit toutes calculatrices confondues, pour seulement 11,48% de la surface globale.

2,57", c'est maintenant la diagonale de l'écran commun aux Graph 25+E II, Graph 35+E II et Graph 35.

5,85 × 2,90 = 16,97 cm² de surface affichable, soit 11,55% de la surface totale.

2,63" c'est la diagonale du plus petit rectangle circonscrit aux zones affichables de l'écran des Lexibook GC3000FR et Esquisse GCEXFR.

Des zones actives rentrant donc dans 5,80 × 3,30 = 19,14 cm², soit 12,45% de la face avant.

126302,83", c'est l'écran des TI-83 Premium CE et TI-84 Plus CE-T avec 5,75 × 4,30 = 24,73 cm², le plus petit écran couleur.

15,91% de la face avant de la calculatrice est donc occupée par l'écran, le pire rapport de toutes les calculatrices à écran couleur.

12695C'est ce même écran qui est également utilisé sur les NumWorks.

18,76% de la surface de la calculatrice sont donc ici utiles.

2,96" caractérisent le regretté écran de la Casio Graph 75+E.

Ici c'est 6,70 × 3,40 = 22,78 cm², soit 13,57%.

126963,13" nous décrivent l'écran des TI-Nspire CX.

Nous avons ici 6,35 × 4,80 = 30,48 cm², soit 18,27% de la surface.

12631Avec 3,28" maintenant, voici le superbe écran de la Casio Graph 90+E, le plus large toutes calculatrices confondues.

7,25 × 4,10 = 29,73 cm², pour 17,62% de la face avant.

6774Nous sautons maintenant directement à 3,44", voici enfin le formidable écran de la HP Prime.

Pas moins de 7,00 × 5,25 = 36,75 cm², pour un formidable 23,85% de la surface.

Même dimensions pour l'écran des TI-Nspire monochromes, mais avec ici 18,36%.

7230Nous bondissons enfin à 4,76", voici le gigantesque écran de la Casio fx-CP400+E.

6,25 × 10,35 = 64,69 cm², pour un espace occupé de 35,02% de la face avant de la calculatrice ! :bj:

Mais après, la seule taille de l'écran ne fait pas tout... A bientôt. ;)



3) Résumé données :Go to top

Lien vers le sujet sur le forum: QCC 2020 épisode 1 : poids et mesures (Commentaires: 5)

QCC 2020 épisode 2 : langages et Python

Nouveau messagede critor » 04 Aoû 2020, 11:15

5409
Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 2 - Langages et Python


Le langage de programmation Python est maintenant essentiel au lycée.

Cette année plusieurs tests seront construits autour de scripts Python, et pas seulement les tests spécifiques au Python.

Dans l'épisode d'aujourd'hui nous allons nous intéresser aux langages de programmation que comprends ta calculatrice.



114038493Commençons par enfoncer les portes ouvertes, les Lexibook GC3000FR et Esquisse GCFR sont totalement analphabètes.
Elles ne comprennent aucun langage car ce ne sont tout simplement pas des calculatrices programmables.

La touche
PROG
qu'elles exhibent honteusement n'a strictement rien à voir avec la saisie d'un programme.
Elle permet tout simplement de mémoriser une série d'opérations, une fonctionnalité que les calculatrices scientifiques Texas Instruments exposent via une touche
OP
, y compris la dernière TI-Collège Plus.

Après nous avons des modèles qui sont programmables mais pas en Python, et avec un langage beaucoup trop éloigné. C'est-à-dire que la traduction de scripts Python pour ta calculatrice te sera la plupart du temps totalement impossible.

Ce sont les :
  • Casio fx-92+ Spéciale Collège avec un langage à la Scratch
  • Casio Graph 25+E II et Casio Graph 25+E avec le Casio Basic, un langage interprété spécifique à Casio
  • TI-82 Advanced, TI-84 Plus T et anciennes TI-84 Plus CE-T avec le TI-Basic, un langage interprété spécifique à Texas Instruments
9363125815181559968325570


Si pas encore mise à jour en version 5.5.5 ou supérieure, la TI-84 Plus CE-T est également programmable en langage machine, et ce directement depuis la calculatrice.

Attention toutefois, les TI-84 Plus T et TI-84 Plus CE-T interdisent toute programmation une fois passées en mode examen. :#non#:


Viennent maintenant les calculatrices qui disposent d'un langage de programmation orienté fonctions. C'est-à-dire que les programmes créés prennent la forme de fonctions, sont appelables avec arguments sous la forme de fonctions, peuvent s'appeler entre eux et même se rappeler eux-mêmes. Ce n'est pas du Python, mais sur calculatrices il s'agit d'une forme de langage spécifique aux modèles haut de gamme et donc beaucoup plus évoluée.

En pratique cela rend possible dans nombre de cas la traduction de scripts Python pour ta calculatrice.

Cela concerne les :
  • Casio fx-CP400+E avec une version orientée fonctions du Casio Basic
  • HP Prime avec le HPPPL
  • TI-Nspire avec une version orientée fonctions du TI-Basic
7184584111506


Les TI-Nspire ont également la particularité de permettre d'exécuter des scripts Lua. Mais il n'est officiellement pas possible de les créer ou modifier directement depuis la calculatrice.

5841Certains modèles vont même au-delà, comme la HP Prime qui en mode CAS gère une syntaxe Python.

C'est loin de permettre de transcrire tous les cas et d'être fiable à 100%, mais c'est déjà mieux. :)

11506Parlons maintenant des modèles qui ne sont pas programmables en Python à ce jour, mais où il devrait être possible un jour plus ou moins lointain, de rajouter la programmation Python.

Les TI-Nspire CX II devaient initialement bénéficier d'une mise à jour rajoutant gratuitement la programmation Python pour la rentrée 2020, puis a été annoncé courant septembre 2020. Nous ne disposons pas de la préversion en question, il est possible que du retard ait été pris suite à l'épidémie. Le site allemand de Texas Instruments annonce d'ailleurs de façon plus imprécise automne 2020, ce qui pourrait être plus lointain. Dans tous les cas ce sera certainement disponible en 2020, et donc largement à temps pour tes examens 2021.
Nous informons donc sur cette possibilité future, mais ne pourrons pas la chiffrer au classement final en l'absence d'une préversion.

5841Une mise à jour HP Prime rajoutant une application Python est également dans les tuyaux. Mais ici à date aucune annonce officielle, c'est juste qu'une version intégrant cette fonctionnalité a par erreur été temporairement publiée en octobre 2019, dans le contexte de la sortie de versions bêta.

Cela a certainement évolué depuis mais la version en question, bien que fonctionnelle au niveau du Python, était très instable ce qui allait même jusqu'à impacter des fonctionnalités hors de l'application Python.
Sans communication officielle, nous ne pouvons absolument pas te garantir que ça sortira en 2020-2021.
En tous cas nous faisons le choix de ne pas évaluer cette version très préliminaire pouvant être qualifiée de alpha, à cause de l'instabilité et de ses divers autres inconvénients qui la pénaliseraient au classement.
Elle est en pratique quasiment inutilisable, nous te déconseillons fortement de l'installer dans le contexte d'évaluations.

Arrivent maintenant les calculatrices qui ne sont d'origine pas programmables en Python, mais sur lesquelles on peut dès maintenant rajouter la programmation Python.

Il s'agit des :
  • Casio Graph 75+E avec l'application CasioPython
  • anciennes Casio Graph 35+E via une installation du système Graph 75+E puis de l'application CasioPython
  • anciennes TI-83 Premium CE via le module externe TI-Python
  • TI-Nspire monochromes et anciennes TI-Nspire CX via l'installation de Ndless puis des programmes MicroPython ou KhiCAS
840249545462

Attention toutefois : :#non#:
  • l'application CasioPython est inutilisable en mode examen :#non#:
  • Ndless n'est à ce jour pas installable sur les TI-Nspire faisant tourner une version système 4.5.1 ou supérieure
  • les programmes MicroPython et KhiCAS disparaîtront également en mode examen :#non#:
  • le module externe TI-Python est quant à lui fonctionnel en mode examen, mais hélas interdit aux examens français, comme tout module externe qu'il soit enfichable ou câblé :#non#:


Tous les modèles sont également programmables dans leur langage interprété historique TI-Basic ou Casio Basic.

Avec le système Graph 75+E les Casio sont de plus programmables en langage machine, mais pas directement depuis la calculatrice

Si pas encore mise à jour en version 5.5.1 ou supérieure, la TI-83 Premium CE est programmable en langage machine directement depuis la calculatrice.

Et enfin voici les calculatrices venant d'origine avec la programmation Python ! :bj:

Ce sont les Casio Graph 35+E II, Casio Graph 90+E, NumWorks, TI-83 Premium CE Edition Python et TI-84 Plus CE-T Python Edition.
96681132512699


Tous les modèles Casio et Texas Instruments sont également programmables dans leur langage interprété historique TI-Basic ou Casio Basic.

Les Casio sont ici encore programmables en langage machine, mais pas directement depuis la calculatrice

Si pas encore mise à jour en version 5.5.1 ou supérieure, la TI-83 Premium CE Edition Python est directement programmable en langage machine.

Attention toutefois, la TI-84 Plus CE-T Python Edition interdit toute programmation une fois passée en mode examen. :#non#:




Résumé donc des capacités des différents modèles autour de la programmation Python, avec :
  • en haut les possibilités hors mode examen, ainsi qu'avec les mises à jour à venir (TI-Nspire CX II et de façon moins certaine HP Prime)
  • en bas les capacités de la machine en mode examen sur les versions actuellement à notre disposition
Lien vers le sujet sur le forum: QCC 2020 épisode 2 : langages et Python (Commentaires: 7)

QCC 2020 épisode 3 : Python et pile (stack)

Nouveau messagede critor » 07 Aoû 2020, 21:39

5409
Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 3 - Python et pile (stack)

Dans l'épisode précédent nous avons donc vu quelles calculatrices étaient programmables en langage Python parmi celles conformes ou se prétendant conformes pour les examens 2021 et au-delà.

Les interpréteurs MicroPython ou similaires qu'elles font tourner font appel à 3 types de mémoires avec les rôles suivants :
  • la mémoire de stockage qui accueille et conserve tes scripts
  • le stack (pile) qui, à l'exécution, accueille les références vers les objets créés
  • le heap (tas) qui, à l'exécution, accueille le contenu de ces objets

En gros le stack limite donc le nombre d'objets différents pouvant exister simultanément en mémoire, alors que le heap limite la taille globale occupée par le contenu de ces objets.

Hors besoins très spécifiques ce n'est habituellement pas le facteur le plus limitant dans les projets pour qui sait optimiser son code, mais aujoud'hui nous allons commencer par nous intéresser au stack.



A ce jour nous ne savons pas mesurer exactement la capacité du stack. Mais par contre nous pouvons en déclencher une consommation massive, afin de pouvoir comparer et voir quels modèles s'en sortent le mieux.

Une situation très simple qui peut être grand consommatrice de stack c'est la récursivité, soit les fonctions qui se rappellent elles-mêmes. Notre protocole de test aujourd'hui va consister à lancer test(compte_r) à partir du script suivant :
Code: Tout sélectionner
def compte_r(n):
  return n>0 and 1 + compte_r(n-1)

def test(f):
  n = 0
  try:
    while 1:
      n = f(n) + 1
  except Exception as e:
    print(e)
  return n

compte_r(n) est donc ici notre fonction récursive qui compte récursivement de 1 à n.

test(f) quant à elle va donc tester des appels f(n) avec n de plus en plus grand, jusqu'à déclenchement d'une erreur qui sera précisée.



Commençons donc avec les Casio Graph 35+E II et Graph 90+E et leur application Python officielle.

Le paramètre d'appel doit monter jusqu'à 82 pour permettre comme indiqué l'épuisement du stack.

Restons chez Casio mais cette fois-ci avec l'application tierce CasioPython. Elle est compatible avec différents modèles monochromes :

Sur les deux premiers nous obtenons une valeur limite extraordinaire de 5362.

Par contre un bug de CasioPython hélas toujours pas corrigé depuis l'année dernière lui fait prendre la Graph 35+E II pour un ancien modèle et réduire sa consommation mémoire, pour une valeur limite quand même relativement impressionnante de 655.

Il est à noter ici que le stack n'est a priori pas forcément épuisé, car la raison de l'erreur est différente. Ici c'est en effet la limite de récursivité configurée qui a été franchie.

Certes en Python on peut consulter cette limite via sys.getrecursionlimit() et même l'ajuster dynamiquement via sys.setrecursionlimit().

Mais ici l'application CasioPython utilise une implémentation MicroPython, ce qui fait que le module sys n'inclut pas ces accesseurs.

Passons maintenant aux TI-83 Premium CE Edition Python et TI-84 Plus CE-T Python Edition. Il y a visiblement du mieux par rapport à l'année dernière ! :D

Texas Instruments a en effet repoussé la limite de 23 à 28 via ses dernières mises à jour 5.5.1 et 5.5.5 ! :bj:

L'ancienne TI-83 Premium CE permet également la programmation Python si munies du module externe TI-Python, module interdit aux examens français mais parfaitement utilisable en classe ainsi qu'aux évaluations si l'enseignant le permet.

Le firmware TI-Python officiel nous permet ici d'aller jusqu'à 20 limite des niveaux de récursion et non du stack ici encore.

Le firmware tiers fourni par Lionel Debroux, bien que proposant nombre d'améliorations, a le défaut de baisser cette valeur limite à 15.

Ici il ne s'agit pas d'une implementation MicroPython mais propriétaire TI-Python, en réalité construite à partir de l'implémentation libre CircuitPython. En tous cas cela ne change rien, le module sys n'a pas ce qu'il faut pour nous permettre d'explorer plus loin via cette méthode.

1274012739Sur NumWorks ici aussi il y a eu du nouveau depuis l'année dernière, le constructeur ayant annoncé avoir quadruplé la taille du stack lors de la mise à jour intermédiaire 13.1.0. :)

Effectivement nous avons ici une progression formidable de la valeur limite, de 33 à 128 ! :bj:

Mais nous n'en avons pas encore terminé avec les NumWorks. Il est possible de leur installer très facilement un firmware tiers, Omega, qui leur rajoute plein de fonctionnalités y compris en mode examen ! :bj:

Sur la dernière édition matérielle NumWorks N0110, Omega permet notamment l'ajout d'applications. Plusieurs sont disponibles dont l'application de mathématiques intégrée KhiCAS par Bernard Parisse, enseignant chercheur à l'Université de Grenoble, une version adaptée aux plateformes nomades qui s'inspire de son propre logiciel de Mathématiques intégré Xcas, et en reprend notamment le moteur de calcul formel GIAC.

12741Et bien Bernard est justement en train de te préparer une mise à jour majeure de KhiCAS pour l'année scolaire 2020-2021, déjà accessible en version de test. Au menu des nouveautés une sous-application tableur / feuille de calculs, ainsi que l'intégration d'un véritable interpréteur MicroPython ! :bj:

Donc pour information, dans le mode interpréteur Python de KhiCAS, la limite est impactée mais très légèrement, passant à 126. Un bien maigre prix à payer par rapport à tous les avantages ! :D

Pour les TI-Nspire CX II, nous ne disposons hélas pas encore de préversion de la mise à jour qui devrait sortir mi-septembre 2020 et rajouter la programmation Python.

Pour les anciens modèles TI-Nspire CX et TI-Nspire monochromes par contre, si non encore mis à jour en version 4.5.1 ou supérieure, il est possible d'installer le jailbreak Ndless qui autorise à son tour par la suite l'installation d'applications tierces. :)
Attention toutefois, contrairement aux applications Omega pour NumWorks, les applications Ndless ont le gros défaut de ne pas rester disponibles en mode examen ! :mj:


Une fois Ndless installé, on peut par exemple rajouter l'application MicroPython, pour une limite ici de 130.

Mais pour les seules anciennes TI-Nspire CX, ce n'est pas tout. Bernard Parisse est également en train de préparer ici la même mise à jour majeure de l'application KhiCAS que pour NumWorks, avec feuille de calcul / tableur et véritable interpréteur MicroPython intégrés, également disponible en version de test ! :bj:

Ici la valeur limite monte même à 155 ! :)

Une mise à jour HP Prime rajoutant une application Python est dans les tuyaux. Aucune date de sortie connue à ce jour, mais une version intégrant cette fonctionnalité a été publiée par erreur en octobre 2019.
Cela a sûrement été corrigé depuis, mais cette vieille version est en pratique très instable, les fonctionnalités Python se payant bien cher... Nous te déconseillons fortement de l'installer dans le contexte d'évaluations.


Nous ne pourrons pas la classer en l'état, mais rien n'empêche d'en parler et de te donner un avant-goût de ce qui t'attend. ;)

Donc ici, la limite est de 77.




Résumé donc des capacités des différents modèles autour du stack Python, avec :
  • en haut les possibilités hors mode examen ou à venir dans de prochaines mises à jour lorsque connues (HP Prime, mais nous ignorons quand...)
  • en bas les capacités de la machine en mode examen sur les versions actuellement à notre disposition
Lien vers le sujet sur le forum: QCC 2020 épisode 3 : Python et pile (stack) (Commentaires: 13)

QCC 2020 épisode 4 : Python et tas (heap)

Nouveau messagede critor » 08 Aoû 2020, 22:40

5409
Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 4 - Python et tas (heap)


Les interpréteurs MicroPython ou similaires qu'elles font tourner font appel à 3 types de mémoires avec les rôles suivants :
  • la mémoire de stockage qui accueille et conserve tes scripts
  • le stack (pile) qui, à l'exécution, accueille les références vers les objets créés
  • le heap (tas) qui, à l'exécution, accueille le contenu de ces objets
En gros le stack limite donc le nombre d'objets différents pouvant exister simultanément en mémoire, alors que le heap limite la taille globale occupée par le contenu de ces objets.

Dans l'épisode précédent nous avons comparé les tailles de stack offertes par les calculatrices programmables en langage Python.

Aujourd'hui nous allons nous intéresser au heap. Cet espace est extrêmement important et surtout sur les plateformes nomades, car contrairement à d'autres langages les objets Python les plus simples ont le défaut d'être assez gros. Ce sera le plus souvent le heap le facteur le plus limitant pour tes projets.



Le temps de construire ensemble notre protocole de tests, commençons par les TI-83 Premium CE Edition Python et TI-84 Plus CE-T Edition Python. Elles sont hautement intéressantes pour comprendre ce qui se passe, puisque disposant du module Python gc. Le module gc nous offre en effet plusieurs fonctions bien utiles ici :
  • gc.collect() pour nettoyer le heap en supprimant les valeurs d'objets Python qui ne sont plus référencées
  • gc.mem_alloc() pour connaître la consommation du heap en octets
  • gc.mem_free() pour connaître l'espace heap disponible en octets

Les TI-83 Premium CE Edition Python et TI-84 Plus CE-T Edition Python disposent donc d'un heap avec exactement 19,968 Ko de capacité.
Mais lorsque l'on accède à l'environnement Python, nombre de choses sont initialisées et ce heap n'est pas vide. Les dernières versions respectives 5.5.1 et 5.5.5 ne nous offrent plus que 17,104 Ko de libres sur le heap, alors que la version 5.4 de l'année dernière culminait à 19,408 Ko.

Précisions que cet espace libre a de plus ici été amputé de par notre importation du module gc. Ce module n'étant hélas disponible que sur une minorité de Pythonnettes il va nous falloir procéder autrement, surtout si l'on souhaite obtenir des mesures comparables.

Donnons quelques éléments de taille en mémoire d'objets Python usuels, du moins sur les plateformes 32 bits que sont nos calculatrices :
  • pour un entier nul : 24 octets déjà...
  • pour un entier court non nul (codable sur 31 bits + 1 bit de signe) : 28 octets
  • pour un entier long :
    • 28 octets
    • + 4 octets pour chaque groupe de 30 bits utilisé par son écriture binaire au-delà des 31 bits précédents
  • pour une chaîne:
    • 49 octets
    • + 1 octet par caractère
  • pour une liste :
    • 64 octets
    • + 8 octets par élément
    • + les tailles de chaque élément
Voici une fonction qui retourne la taille d'un objet selon ces règles :
Code: Tout sélectionner
def size(o):
  t = type(o)
  s = t == str and 49 + len(o)
  if t == int:
    s = 24
    while o:
      s += 4
      o >>= 30
  elif t == list:
    s = 64 + 8*len(o)
    for so in o:
      s += size(so)
  return s


Une piste consiste alors à tenter de remplir le heap jusqu'à déclenchement d'une erreur, et retourner alors l'espace maximal que l'on a réussi à consommer. Voici justement une fonction en ce sens :
Code: Tout sélectionner
def mem(v=1):
  try:
    l=[]
    try:
      l.append(0)
      l.append(0)
      l.append("")
      l[2] += "x"
      while 1:
        try:
          l[2] += l[2][l[1]:]
        except:
          if l[1] < len(l[2]) - 1:
            l[1] = len(l[2]) - 1
          else:
            raise(Exception)
    except:
      if v:
        print("+", size(l))
      try:
        l[0] += size(l)
      except:
        pass
      try:
        l[0] += mem(v)
      except:
        pass
      return l[0]
  except:
    return 0


L'appel mem(0) semble marcher comme souhaité, retournant une valeur qui peut comme prévu légèrement dépasser les 17,104 Ko trouvés plus haut.

Mais voilà autre petit problème, le résultat n'est pas toujours le même, dépendant en effet de l'état du heap lors de l'appel. Rien que sur les résultats ci-contre, nous avons une marge d'erreur de 1 à 2%.

12725C'est beaucoup, en tous cas suffisamment pour inverser injustement des modèles au classement. Or cette année, nous tenons à être aussi précis que possible comme tu as pu le voir dès notre 1er épisode, afin justement de produire un classement aussi équitable que possible. ;)

Certes, on pourrait nettoyer ça avant chaque appel avec gc.collect(), mais ce ne serait pas juste puisque nous n'aurons pas cette possibilité sur nombre de modèles concurrents. Il nous faut donc trouver autre chose.

L'absence du module gc et donc de gc.collect() ne signifie absolument pas que le heap ne sera jamais nettoyé. C'est juste que nous ne contrôlons pas le moment où il le sera.

Et bien voici l'élément final du protocole de test que nous te proposons, avec une boucle répétant des appels mem(0), ce qui devrait finir par déclencher des nettoyages du heap, et te signalant à chaque fois que la valeur retournée bat ainsi un nouveau record :
Code: Tout sélectionner
def testmem():
  m = 0
  while 1:
    t = mem(0)
    if t > m:
      m = t
      input(str(m))

testmem() signale au départ rapidement plusieurs nouveaux records d'occupation mémoire. Battre chaque nouveau record est de plus en plus difficile, et les nouveaux affichages nécessitent de plus en plus de temps. Nous arrêtons le test lorsque le dernier record n'aura pas pu être battu malgré 5 minutes écoulées depuis son affichage.

Nous aurions donc 17,233 Ko disponibles sur le heap.

Mais ici encore lorsque nous réalisons notre appel, le heap a déjà été entâmé par l'importation de notre script de test.

Pas grave, il nous suffit tout simplement d'utiliser le module gc pour connaître la consommation heap de notre script. ;)

736 octets donc, qu'il nous suffira d'ajouter à toutes les valeurs obtenues dans ce qui suit.

Nous avons donc ici sur TI-83 Premium CE Edition Python et TI-84 Plus CE-T Edition Python 17,233+0,736= 17,969 Ko. Et entre nous, ce n'est franchement pas beaucoup.

Prenons maintenant l'ancienne TI-83 Premium CE munie du module externe TI-Python interdit aux examens français, mais restant utilisable en classe ainsi qu'aux évaluations si l'enseignant le permet.

Ce n'est pas la panacée mais c'est quand même sensiblement mieux, avec 19,496+0,736= 20,232 Ko.

Conscient du problème de sous-dimensionnement de ce heap, Lionel Debroux a développé un firmware tiers pour le module externe TI-Python.

Si tu l'installes tu bénéficieras donc d'un espace heap disponible nettement amélioré, avec 22,158+0,736= 22,894 Ko.

C'est donc au-delà de la capacité heap de 19,968 Ko trouvée plus haut pour le firmware officiel, mais c'est normal puisque l'on se rend compte que Lionel a en effet passé la capacité heap à 22,912 Ko.

1274412743Arrive maintenant la NumWorks. Depuis l'année dernière, nous passons de la version 12.2 à 14.4. Enormément de choses ont été apportées par les mises à jour intermédiaires.

Et justement, le heap qui était à 15,557+0,736= 16,293 Ko utilisables pour tes scripts, double à 31,485+0,736= 32,221 Ko ! :o

Mais la chose ne s'arrête pas là. Il est possible très facilement sur ta NumWorks d'installer un firmware tiers, Omega. Basé sur le firmware officiel dont il suit les évolutions, il lui rajoute plein de fonctionnalités utiles et légitimes qui auront le gros avantage de rester disponible en mode examen ! :D

Sur la dernière édition matérielle NumWorks N0110, Omega permet notamment l'ajout d'applications. Plusieurs sont disponibles dont l'application de mathématiques intégrée KhiCAS par Bernard Parisse, enseignant chercheur à l'Université de Grenoble, une version adaptée aux plateformes nomades qui s'inspire de son propre logiciel de Mathématiques intégré Xcas, et en reprend notamment le moteur de calcul formel GIAC. :D

1274612747Et bien Bernard est justement en train de te préparer une mise à jour majeure de KhiCAS pour l'année scolaire 2020-2021, déjà accessible en version de test. Au menu des nouveautés une sous-application tableur / feuille de calculs, ainsi que l'intégration d'un véritable interpréteur MicroPython ! :#tritop#:

Et grosse surprise puisque nous bondissons ici à 39,747+0,736= 40,483 Ko de heap disponible, Bernard ayant en effet eu la bonne idée de passer la capacité heap à 40 Ko ! :)

127571275512754Mais ce n'est pas tout, KhiCAS est notamment la seule solution Python sur calculatrices à te permettre de choisir toi-même la taille du heap, par défaut donc de 40 Ko, et ce librement entre 16 Ko et 64 Ko, une formidable option pour estimer la consommation heap de tes projets ! :D

1275912758Passons donc ça à 64 Ko, et effectivement nous obtenons maintenant un espace heap disponible de 63,660+0,736= 64,396 Ko ! :bj:

12748La Casio Graph 35+E II nous crève maintenant le plafond avec pas moins de 99,490+0,736= 100,226 Ko de heap disponible dans son application Python officielle ! :D

Il existe aussi une application Python tierce pour les Casio Graph monochromes, CasioPython. Elle est compatible avec les modèles suivants, mais hélas bloquée par le mode examen :

1275312750Sur les deux premiers nous nous envolons à pas moins de 257,026+0,736= 257,762 Ko ! :bj:

En effet selon le module gc, la capacité heap a ici été réglée à 258,048 Ko.

1275212749Hélas, un bug toujours pas corrigé depuis l'année dernière fait que CasioPython reconnaît bêtement la Graph 35+E II comme un ancien modèle, n'y réservant alors qu'une capacité heap de 32,256 Ko. :'(

Nous n'obtenons alors qu'un espace heap libre de 31,163+0,736= 31,899 Ko, ici donc sans aucun intérêt par rapport à l'application Python officielle. :#non#:

12751La Casio Graph 90+E nous met maintenant en orbite avec un formidable 1031,713+0,736= 1032,449 Ko soit 1,032 Mo, de quoi développer de fantastiques projets ! :#tritop#:

Pour les TI-Nspire CX II, nous ne disposons hélas pas à ce jour de préversion de la mise à jour qui devrait sortir mi-septembre 2020 et rajouter la programmation Python.

Pour les anciens modèles TI-Nspire CX et TI-Nspire monochromes par contre, si non encore mis à jour en version 4.5.1 ou supérieure, il est possible de leur installer le jailbreak Ndless qui autorise à son tour par la suite l'installation d'applications tierces. :)
Attention toutefois, contrairement aux applications Omega pour NumWorks, Ndless fait hélas le choix de s'effacer totalement devant le mode examen ! :mj:

Les applications Ndless seront donc inutilisables, y compris donc les applications parfaitement légitimes comme MicroPython apportant des fonctionnalités disponibles en mode examen sur d'autres modèles. :'(


Une fois Ndless installé, on peut par exemple rajouter l'application MicroPython qui nous fait littéralement quitter l'attraction terrestre avec pas moins de 2080,065+0,736= 2080,801 Ko soit 2,081 Mo ! :#tritop#:

En creusant un petit peu grâce au module gc ici disponible, nous découvrons que la capacité heap est de 2,049 Mo.


Mais pour les seules anciennes TI-Nspire CX, ce n'est pas tout. Bernard Parisse est également en train de préparer ici la même mise à jour majeure de l'application KhiCAS que pour NumWorks, avec feuille de calcul / tableur et véritable interpréteur MicroPython intégrés, également disponible en version de test ! :bj:

Nous sommes ici en retrait même si cela reste parfaitement honorable, avec 1023,812+0,736= 1024,548 Ko soit 1,025 Mo.

En effet la capacité heap n'est ici que de 1,025 Mo selon le module gc.


Une mise à jour HP Prime rajoutant une application Python est dans les tuyaux. Aucune date de sortie communiquée à ce jour, mais une version intégrant cette fonctionnalité a été publiée par erreur en octobre 2019.
Cela a sûrement été corrigé depuis, mais cette vieille version est en pratique très instable. Nous te déconseillons fortement de l'installer dans le contexte d'évaluations.

Nous ne pourrons en l'état la retenir au classement, surtout que nous n'avons aucune garantie qu'elle sorte en 2020-2021, mais nous testons quand même lorsque possible afin de pouvoir t'estimer ce que vaudra la mise à jour en question.

Donc ici encore nous bénéficions d'un heap correctement dimensionné, avec 1017,692+0,736= 1018,428 Ko soit 1,018 Mo de disponibles sur le heap. :)

Le module gc nous apprend en effet que HP a réglé la capacité de son heap ici encore à 1,025 Mo, exactement comme Bernard.




Résumé de nos mesures, avec donc l'espace heap Python disponible à vide pour chacun des modèles :
  • en bas ne tient compte que des seules capacités d'origine officielles de la machine en mode examen sur les versions actuellement à notre disposition
  • en haut tient compte de toutes les possibilités évoquées pour d'autres situations (installation d'applications, mises à jour à venir, contexte hors mode examen...)
Lien vers le sujet sur le forum: QCC 2020 épisode 4 : Python et tas (heap) (Commentaires: 29)

QCC 2020 épisode 5 : Unités et conversions

Nouveau messagede critor » 13 Aoû 2020, 11:09

5409
Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 5 - Unités et conversions




Nous n'en avions pas refait depuis 2017, mais cette année il y a du nouveau. Traitons donc des possibilités de conversion d'unités de nos calculatrices.

Si jamais tu avais opté pour un modèle dépourvu d'un convertisseur d'unités, tu pouvais jusqu'à présent télécharger gratuitement des programmes rajoutant cette fonctionnalité.
Hélas, c'est désormais impossible à cause du mode examen à diode qui sera mis en place pour la première fois de façon nationale à l'occasion des épreuves d'examen 2020-2021, un mode qui désactive tout ce que tu auras rajouté.

Il est donc important pour toi cette année de choisir d'origine un modèle pourvu de cette fonctionnalité, ce que nous allons t'indiquer pour l'ensemble des modèles conformes ou se disant conformes 2021.
De plus il existe certains modèles où le mode examen désactive certaines fonctionnalités officielles, dont le convertisseur d'unités pourtant préchargé à l'achat de la calculatrice, un véritable piège que nous allons par la même occasion désamorcer.



Déjà, commençons par dénoncer les modèles dépourvus à l'achat d'un convertisseur d'unités, et sans aucune solution à ce jour :
  • l'Esquisse GCEXFR, à fuir comme la peste :#non#:
  • la Lexibook GC3000FR, entre la peste et le choléra... :mj:
  • la Casio Graph 25+E
  • la Casio Graph 25+E II
  • la TI-82 Advanced, qui visiblement n'est pas aussi avancée que ça...
  • et la Casio fx-CP400+E, si si, bizarrement le seul modèle haut de gamme à en être incapable alors que le milieu de gamme du même constructeur le fait très bien
11403849351811258155997184

A noter qu'il n'existe bien à ce jour aucune solution pour TI-82 Advanced, officielle ou non.
Certes, il existe une application TI-83/84 Plus officielle SciTools incluant un convertisseur d'unités...
Certes, il est possible d'installer sur TI-82 Advanced des applications TI-83/84 Plus et d'y conserver l'accès en mode examen...
Mais les applications installées via cette méthode doivent faire moins de 16 Kio et SciTools est hélas beaucoup trop gros. :'(

Sur les TI-83 Premium CE et TI-83 Premium CE Edition Python, les conversions d'unités sont apportées par l'application SciTools (outils scientifiques), venant préchargée dans les calculatrices neuves.
Si jamais cette application a été effacée, il suffit juste de la retélécharger et réinstaller gratuitement. :)

11 catégories clairement nommées en français te donnent accès à 106 unités différentes, dont :
  • 61 unités simples
  • 25 unités munies d'un préfixe SI
  • 20 unités composées
Ce convertisseur a toutefois le gros défaut de ne pas être intégré à l'écran de calculs. Il dispose d'une simple ligne de saisie spécifique n'autorisant même pas l'écriture naturelle, tu auras l'impression d'un véritable retour en arrière et l'inconfort d'une saisie ne réagissant pas comme les autres.
De plus impossible également d'appliquer la conversion d'unité à un calcul, il te faudra donc recopier le résultat à convertir à la main en passant par une feuille de brouillon, la calculatrice ne comportant pas de fonctionnalité de copier-coller.

Précisons également que tu es limité(e) aux seules unités listées et pas une de plus. Impossible d'utiliser une unité munie d'un préfixe SI autre que ceux avec lesquels elle est listée au menu ; rien que ci-contre tu remarqueras donc l'absence des hectomètre (hm), décamètre (dam) et décimètre (dm).

Toutefois 13 préfixes SI sont listés dans une catégorie à part, une astuce permettant de transposer tes conversions d'unités simples lorsque les bons préfixes ne lui sont pas associés.

Le menu de bas d'écran "EXPT" (exporter) permettra de récupérer la valeur à l'écran de calculs.

Bref un convertisseur d'unités très limité, tout juste digne d'un programme amateur.

1269955706832Attention au piège, particulièrement pour les candidats dans les lycées français à l'étranger.

D'autres modèles Texas Instruments incluent également l'application SciTools, mais le mode examen une fois activé en interdira l'accès : :#non#:
  • TI-84 Plus T
  • TI-84 Plus CE-T
  • TI-84 Plus CE-T Python Edition

Sur les calculatrices Casio Graph 35+E, Casio Graph 35+E II et Casio Graph 75+E, on accède au menu de conversion via le menu de bas d'écran CONV disponible sous
OPTN
.

Ici, le convertisseur a le gros avantage d'être intégré à l'écran de calculs, c'est-à-dire que tu bénéficies de tous les avantages de ce dernier :
  • saisie en écriture naturelle
  • conversion directement sur un calcul en cours de saisie
  • récupération facile d'un résultat précédent pour conversion sans besoin de passer par une feuille de brouillon
  • ...

Par contre le listage certes intuitif des 11 catégories en menu de bas d'écran utilise des abréviations, et l'on peut regretter qu'elles ne soient pas traduites, restant en anglais contrairement au reste du système ce qui n'arrange pas la chose.

Y sont disponibles également 106 unités, mais réparties de la façon suivante :
  • 67 unités simples
  • 16 unités munies d'un préfixe SI
  • 23 unités composées

Les possibilités sont les mêmes que pour la solution précédente, tu ne peux convertir que les unités listées, impossible de préfixer ou combiner pour obtenir une unité non présente au menu.

Par contre, tous ces modèles disposent d'un mode d'affichage dit ingénieur (ENG) permettant de convertir vers les préfixes SI.

9668Attention au piège, sur la Graph 90+E la conversion d'unités est liée à l'application additionnelle officielle préchargée Conv.

Et comme toute application additionnelle, elle est désactivée en mode examen. :mj:

Les TI-Nspire CX CAS en version 4.5.0 ou supérieure ainsi que les TI-Nspire CX II CAS offrent 152 unités accessibles à travers pas moins de 26 catégories différentes via :nsbi: :ns3: :
  • 86 unités simples
  • 37 unités munies d'un préfixe SI
  • 29 unités composées

Notons à chaque fois une légende en français décrivant clairement l'unité en question.

Mais cela va beaucoup plus loin que ça. En effet les unités font partie intégrante du calcul et peuvent être combinées à l'infini via de simples opérations et même stockées avec les valeurs dans les variables. De quoi comprendre véritablement la logique des unités et franchir naturellement le pas des formules et équations aux dimensions en Physique-Chimie ! :bj:

Remarquons de plus ici la bonne intégration avec le moteur de calcul formel, permettant même de découvrir le calcul justifiant le résultat ! :bj:

On apprécie de plus ici les transformations automatiques d'unités composées et unités préfixées lorsque la calculatrice pense avoir trouvé une forme plus pertinente. :)

Par contre toujours pas possible ici de préfixer des unités comme on veut, d'autant plus regrettable que nombre d'unités préfixées usuelles manquent ici encore au menu.

L'intégration est tellement poussée qu'il est possible de faire appel à des unités dans des matrices, vecteurs, listes ou même programmes ! :bj:

Petit regret toutefois, unités et constantes physiques utilisent à la saisie le même préfixe. Quelle idée alors que cela n'a strictement rien à voir... Plusieurs unités n'adoptent en conséquence pas la bonne notation car sinon elles s'écriraient comme la constante de même nom :
  • le gramme qui se saisit _gm et non _g réservé à l'accélération de la pesanteur terrestre
  • l'heure qui se saisit _hr et non _h réservé à la constante de Planck
C'est peu, certes, mais ça touche des unités suffisamment communes pour avoir de graves conséquences. :mj:

Globalement une solution haut de gamme extrêmement poussé, tu en as pour ton argent ! :bj:
La TI-Nspire CAS TouchPad offre les mêmes fonctionnalités à partir d'un éventail plus restreint de 120 unités au menu :
  • 85 unités simples
  • 32 unités munies d'un préfixe SI
  • 3 unités composées

Sur les simples TI-Nspire TouchPad et TI-Nspire monochromes, pas de convertisseur d'unités.
Toutefois tu peux obtenir ces dernières capacités en leur installant le système TI-Nspire CAS.

Les TI-Nspire CX en version 4.5.0, TI-Nspire CX II-T et TI-Nspire CX II offrent quant à elles 116 unités à travers 11 catégories :
  • 68 unités simples
  • 19 unités munies d'un préfixe SI
  • 29 unités composées
Ici par contre, pas de possibilité de combiner des unités. Si c'est pas au menu, c'est foutu...
Pour les seules TI-Nspire CX (pas TI-Nspire CX II), de façon similaire aux TI-Nspire monochromes il est en théorie possible de leur installer le système TI-Nspire CX CAS pour bénéficier de l'intégralité des fonctionnalités relatives aux unités.
Il suffit pour cela d'installer nBoot + ControlX si compatible, ou à défaut nLoader.

Toutefois en pratique l'ajout de ces outils nécessite de commencer par installer Ndless. Or la plupart des TI-Nspire CX que tu trouveras seront préchargées avec une version 4.5.1 ou supérieure que Ndless ne gère toujours pas. :'(

Cette transformation qui n'est plus réalisable que par une minorité ne sera donc pas comptabilisée.

Sur HP Prime, on accède au menu des unités via
Shift
Units
, avec 178 unités sous 18 catégories. :bj:
  • 125 unités simples
  • 9 unités munies d'un préfixe SI
  • 44 unités composées

Pour la description de chaque unité, il suffit de taper
Help
.

Une solution très similaire à la précédente, les unités font partie intégrante du calcul ce qui ouvre des possibilités bien plus larges que ce que laisse apparaître le menu, dont la fabrication d'unités composées non listées.

Pour les unités composées présentes au menu notons leur affichage en écriture naturelle, un avantage exclusif jusqu'à présent ! :bj:

Mais aussi tu peux ici librement préfixer toutes tes unités à l'aide de 20 préfixes SI génériques ! :bj:

Ici toutefois, on ne bénéficie pas du moteur de calcul formel. :mj:

Aucune transformation automatique non plus, même face à des combinaisons peu pertinentes.

L'utilisation d'unités dans des listes ou programmes est parfaitement possible. :bj:

Le stockage d'unités dans des variables ainsi que l'utilisation dans du calcul matriciel ou vectoriel également, mais attention uniquement dans le contexte CAS.

Ici encore une excellente solution ! :bj:

Grande nouveauté de cette rentrée 2021, la NumWorks gère les unités, fonctionnalité introduite avec la version 13.1.

21 catégories nous présentent donc :
  • 33 unités simples
  • 42 unités munies d'un préfixe SI

Cela peut paraître peu a priori face aux solutions précédentes, mais c'est sans compter qu'ici encore les unités font partie intégrante du calcul pour de formidables possibilités, dont la composition libre d'unités à l'infini ! :D

Les menus ne présentent certes pas chaque unité avec tous les préfixes SI possibles.
Toutefois il sera ici encore possible de préfixer librement des unités à la saisie, de pico pour 10-12 à Tera pour 1012. :)
Petit avertissement par contre, contrairement à la solution précédente ici cela ne fonctionne bizarrement pas avec toutes les unités. Admettons, mais le problème est surtout qu'il n'y a aucun moyen de le savoir à l'avance, un défaut d'intuitivité... :'(

Ici hélas, pas de possibilité d'utiliser les unités dans du calcul de listes, vectoriel ou matriciel. :'(

Impossible également de les utiliser dans les programmes, un gros défaut de cette machine étant que sa seule application de programmation disponible, l'appli Python, tourne totalement en vase clos sans aucune interaction en entrée ou sortie avec le reste des variables ou fonctionnalités du système. :mj:

Par contre, la solution NumWorks bénéficie de plusieurs avantages à ce jour exclusifs :
  • utilisation automatique du préfixe SI le plus pertinent pour les résultats avec unités selon leur valeur :bj:
  • ou même changement automatique pour une unité plus pertinente selon la valeur :bj:
Et ce n'est pas tout, la NumWorks est aussi la seule solution où tu n'auras la plupart du temps pas besoin de demander une conversion d'unités.

En effet, gros avantage d'interface, il te suffira tout simplement de sélectionner ton résultat avec unités dans l'historique de calcul pour obtenir automatiquement d'une simple touche sa conversion dans une ou plusieurs autres unités pertinentes selon la calculatrice ! :bj:

Ici encore donc une solution haut de gamme dont l'utilisation permet de véritablement comprendre ce qu'est une unité, mais à la différence des précédentes au prix du milieu de gamme ! :#tritop#:
A noter que l'installation du firmware tiers Omega permet de bénéficier d'un jeu d'unités un peu plus élargi, et ce même en mode examen : :bj:
  • 43 unités simples
  • 42 unités munies d'un préfixe SI



Résumé des données, avec :
  • en bas les fonctionnalités officielles présentes à l'achat et persistant en mode examen
  • en haut l'ensemble des possibilités avec améliorations et/ou hors mode examen
Lien vers le sujet sur le forum: QCC 2020 épisode 5 : Unités et conversions (Commentaires: 12)

QCC 2020 épisode 6 : Constantes physiques

Nouveau messagede critor » 16 Aoû 2020, 20:45

5409
Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 6 - Constantes physiques




Cette année il y a du nouveau au niveau des bibliothèques de constantes physiques ; voyons donc ce qu'offrent les calculatrices graphiques conformes ou se disant conformes 2021.

Si jamais tu avais opté pour un modèle dépourvu d'une telle bibliothèque, tu pouvais jusqu'à présent télécharger gratuitement des programmes en rajoutant.
Hélas, c'est désormais impossible à cause du mode examen à diode qui sera mis en place pour la première fois de façon nationale à l'occasion des épreuves d'examen 2020-2021, un mode qui désactive tout ce que tu auras rajouté.

Il ne faut donc pas te tromper dans ton achat cette année, particulièrement si tu envisages une coloration sciences expérimentales de ton orientation.



Déjà, commençons par dénoncer les modèles dépourvus à l'achat d'une bibliothèque de constantes physiques, et sans aucune solution à ce jour :
  • l'Esquisse GCEXFR
  • la Lexibook GC3000FR
  • la Casio Graph 25+E
  • la Casio Graph 25+E II
114038493518112581

Sur les TI-83 Premium CE et TI-83 Premium CE Edition Python, la bibliothèque de constantes physiques est apportée par l'application SciTools (outils scientifiques), venant préchargée dans les calculatrices neuves.
Si jamais cette application a été effacée, il suffit juste de la retélécharger et réinstaller gratuitement. :)

15 constantes physiques y sont disponibles, avec pour chacune : description, symbole et unité ! :bj:
Les symboles toutefois ne sont pas toujours standard.

Le menu de bas d'écran
EXPT
permettra d'exporter la valeur numérique intégrale vers la ligne de saisie de l'écran de calculs.
Les constantes ont ainsi le défaut de ne pas pouvoir être appelées automatiquement depuis un calcul ou un programme.

On peut ainsi déplorer l'impossibilité pour un programme de récupérer automatiquement une valeur de constante.

Bref il n'y a donc ici pas beaucoup de constantes ; mais la quantité ne fait pas tout. ;)
Pour cette rentrée 2020, l'application bénéficie d'une mise à jour 5.5 avec des corrections de valeurs de certaines constantes.

Tentons donc d'évaluer la précision de cette bibliothèque. Nous allons nous baser pour cela sur les valeurs de 8 constantes communes à toutes les solutions que nous allons te présenter :
  • e : charge élémentaire
  • G : constante de gravitation universelle
  • h : constante de Planck
  • k : constante de Boltzmann
  • me : masse de l'électron
  • mp : masse du proton
  • NA : nombre d'Avogadro
  • R : constante universelle des gaz parfaits

Nous prendrons comme référence les valeurs officielles du CODATA (Comité de données pour la science et la technologie), dont la dernière mise à jour date de 2018 : CODATA 2018.

Voici un petit script Python auquel il suffira de fournir les chiffres significatifs des constantes de la calculatrice pour obtenir les écarts relatifs de chacune ainsi que l'écart relatif moyen :
Code: Tout sélectionner
from math import log

def mean(l):
  return sum(l)/len(l)

def error_r(name, val):
  data = (
    ['c',  299792458, 0],
    ['e',  1602176634, -19],
    ['G',  667430, -11],
    ['g',  980665, 0],
    ['h',  662607015, -34],
    ['k',  1380649, -23],
    ['me', 91093837015, -31],
    ['mn', 167492749804, -27],
    ['mp', 167262192369, -27],
    ['NA', 602214076, 23],
    ['R',  8314462618, 0],
    ['u',  166053906660, -27],
  )
  for vref in data:
    if vref[0] == name:
      break
  if vref[0] == name:
    while int(log(val, 10)) < int(log(vref[1] , 10)):
      val *= 10
    while int(log(val, 10)) > int(log(vref[1] , 10)):
      vref[1] *= 10
    return abs(val - vref[1]) / vref[1]

def error_m(l):
  lerr = []
  for v in l:
    err = error_r(v[0], v[1])
    lerr.append(err)
    print(v[0], err)
  return mean(lerr)


Recopions donc les valeurs fournies par la calculatrice dans notre appel, avec l'ancienne puis la nouvelle version :
Code: Tout sélectionner
error_m([
  ['e',  1602176565],
  ['G',  667384],
  ['h',  662606957],
  ['k',  13806488],
  ['me', 910938291],
  ['mp', 1672621777],
  ['NA', 602214129],
  ['R',  83144621],
])

Code: Tout sélectionner
error_m([
  ['e',  1602176634],
  ['G',  66743],
  ['h',  662607015],
  ['k',  1380649],
  ['me', 91093837015],
  ['mp', 167262192369],
  ['NA', 602214076],
  ['R',  8314462618],
])

C'est extraordinaire, quel formidable travail de veille scientifique chez Texas Instruments.
L'écart relatif moyen passe de 0,000869% avec la version précédente de l'application à 0% cette année ; c'est-à-dire que toutes les constantes testées sont exactes ! :bj:

Plus précisément la mise à jour nous fait passer des valeurs CODATA 2010 aux valeurs CODATA 2018.
Texas Instruments avait donc pris pas mal de retard mais s'est finalement bien rattrapé. :)

Candidats scolarisés hors de France, attention.

La TI-84 Plus CE-T distribuée dans le reste des pays européens interdira l'accès à l'application SciTools une fois passée en mode examen ! :#non#:

Même problème pour la TI-84 Plus T monochrome. :mj:

Accessoirement ce modèle n'a jamais bénéficié de la moindre mise à jour depuis sa sortie pour la rentrée 2016. Les valeurs utilisées sont donc plus anciennes, avec ici un écart relatif moyen de 0,00247% : :(
Code: Tout sélectionner
error_m([
  ['e',  1602176462],
  ['G',  6673],
  ['h',  662606876],
  ['k',  13806503],
  ['me', 910938188],
  ['mp', 167262158],
  ['NA', 602214199],
  ['R',  8314472],
])

Il s'agit en fait de valeurs beaucoup plus anciennes correspondant à la base de données CODATA 1998.
C'est-à-dire que Texas Instruments semble n'avoir jamais mis à jour les données de l'application SciTools pour TI-82/83/84+ depuis le lancement de cette gamme avec la TI-83 Plus en 1999, et avoir utilisé la même application pour la TI-84 Plus T en 2016 sans aucun rafraîchissement du contenu.


La TI-82 Advanced monochrome ne dispose hélas pas de l'application SciTools.
Il est certes possible d'installer des applications TI-82/83/84 Plus et même d'y conserver l'accès en mode examen...
Mais les applications installées via cette méthode doivent faire moins de 16 Kio et SciTools est hélas beaucoup trop gros. :'(

Par contre, on peut installer l'application Omnicalc qui inclut une petite bibliothèque de 13 constantes, et aura le gros avantage de rester disponible en mode examen.

Ici on récupère les valeurs de constantes en résultat, et elles ont ainsi le gros avantage de pouvoir être directement appelées depuis un programme.
Par contre pas d'unités ni de description, et les symboles se permettent diverses fantaisies.

Cette application a été mise à jour pour la dernière fois en 2004, donc les valeurs seront ici bien plus obsolètes.
Notons que comme les valeurs étant récupérées en résultat, tous leurs chiffres significatifs ne sont pas forcément affichés.
Voici un petit programme TI-Basic afin d'extraire tous les chiffres significatifs du dernier résultat :
Code: Tout sélectionner
abs(Rep→X
" →Chn1
"0123456789→Chn0
While partDéc(X
  10X→X
End
While X≥10
  X/10→X
End
While X
  ent(X→I
  10partDéc(X→X
  Chn1+sousch(Chn0,I+1,1→Chn1
End
Chn1

Mais en fait non, les constantes sont tellement peu précises ici qu'il n'y a pas de chiffre significatif masqué.

Ici l'erreur relative moyenne est ainsi de 0,00396% :
Code: Tout sélectionner
print(error_m([
  ['e',  160217733],
  ['G',  667259],
  ['h',  66260755],
  ['k',  1380658],
  ['me', 91093897],
  ['mp', 16726231],
  ['NA', 60221367],
  ['R',  831451],
]))

En fait, c'est encore pire que ce que l'on pensait, les valeurs correspondent à la banque CODATA 1986...


La Casio Graph 90+E dispose d'une application officielle préchargée Physium qui apporte une bibliothèque de constantes.

Attention, cette application sera inaccessible en mode examen. :#non#:

Pas moins de 39 constantes sont ici disponibles avec leurs symboles et, sur demande, descriptions et unités.

Un gros avantage par contre ici, est que l'on peut modifier les constantes pour s'adapter par exemple à la valeur fournie par un énoncé, et les réinitialiser automatiquement pas la suite.

Pas de possibilité d'appel automatique depuis un programme, par contre l'interface permet de stocker directement la valeur sélectionnée dans une variable de la calculatrice.

Voici de quoi extraire l'ensemble des chiffres significatifs des variables en question :
Code: Tout sélectionner
?→X
Abs X→X
""→Str 1
"0123456789"→Str 10
While Frac X
  10X→X
WhileEnd
While X≥10
  X÷10→X
End
While X
  Int X→I
  10Frac X→X
  StrJoin(Str 1,StrMid(Str 10,I+1,1))→Str 1
WhileEnd
Locate 1,1,Str 1


Une fois l'ensemble des chiffres significatifs récupérés, nous trouvons ici 0,000422% d'erreur relative moyenne :
Code: Tout sélectionner
error_m([
  ['e',  16021766208],
  ['G',  667408],
  ['h',  662607004],
  ['k',  138064852],
  ['me', 910938356],
  ['mp', 1672621898],
  ['NA', 6022140857],
  ['R',  83144598],
])

Il s'agit ici des valeurs CODATA 2014.

Physium est tout autant disponible pour Casio fx-CP400+E, avec les mêmes valeurs CODATA et quasiment les mêmes capacités.

Seule et unique chose que nous ne trouvons pas ici, la possibilité de modifier les constantes.


Ici encore, plus rien en mode examen.

Physium est également disponible pour les Casio Graph 35+E II et Graph 75+E monochrome avec exactement les mêmes capacités.

Toujours aussi interdite en mode examen.

L'application passe cette année à la nouvelle version 1.13, première mise à jour concernant la Graph 75+E depuis 2014 !

Le changement est que les constantes basculent sur les nouvelles valeurs qu'utilisaient déjà les versions couleur pour Graph 90+E et fx-CP400+E depuis des années, passant l'erreur relative moyenne de 0,000869% à 0,000422% :
Code: Tout sélectionner
error_m([
  ['e',  1602176565],
  ['G',  667384],
  ['h',  662606957],
  ['k',  13806488],
  ['me', 910938291],
  ['mp', 1672621777],
  ['NA', 602214129],
  ['R',  83144621],
])

Code: Tout sélectionner
error_m([
  ['e',  16021766208],
  ['G',  667408],
  ['h',  662607004],
  ['k',  138064852],
  ['me', 910938356],
  ['mp', 1672621898],
  ['NA', 6022140857],
  ['R',  83144598],
])

Nous passons donc ici des valeurs CODATA 2010 aux valeurs CODATA 2014.

Pour les anciennes Casio Graph 35+E il est possible de leur installer le système Graph 75+E pour ensuite leur rajouter l'application Physium.

Toutefois elle restera tout autant inaccessible en mode examen.


Les TI-Nspire CX II CAS, ainsi que les TI-Nspire CX CAS si mise à jour en version 4.5 ou supérieure t'offriront 24 constantes, toutes accompagnées de leurs descriptions et unités.
Leur nommage par contre n'est pas toujours très heureux par rapport à leur symbole, les constantes ayant le défaut d'utiliser le même préfixe que les unités.

Voici de quoi extraire l'ensemble des chiffres significatifs :
Code: Tout sélectionner
Define fullnbr(x)=
Func
  Local s,i
  s:=""
  x:=abs(x)
  While fPart(x)≠0
    x:=10*x
  EndWhile
  While x≥10
    x:=((x)/(10))
  EndWhile
  While x≠0
    i:=int(x)
    x:=10*fPart(x)
    s:=s&mid(string(i),1,1)
  EndWhile
  Return s
EndFunc


Nous avons ici affaire aux données CODATA 2014.

Les données de nos constantes une fois extraites en intégralité nous donnent une erreur relative moyenne de 0,000422% :
Code: Tout sélectionner
error_m([
  ['e',  16021766208],
  ['G',  667408],
  ['h',  662607004],
  ['k',  138064852],
  ['me', 910938356],
  ['mp', 1672621898],
  ['NA', 6022140857],
  ['R',  83144598],
])

Les simples TI-Nspire CX II-T, TI-Nspire CX II et TI-Nspire CX si mise à jour en version 4.5 ou supérieure offriront la même bibliothèque de constantes, mais sans les unités.

La TI-Nspire CAS TouchPad quant à elle reprend l'intégralité des fonctionnalités, mais avec le jeu de données beaucoup plus ancien du CODATA 2010, pour une erreur relative moyenne de 0,000869% :
Code: Tout sélectionner
error_m([
  ['e',  1602176565],
  ['G',  667384],
  ['h',  662606957],
  ['k',  13806488],
  ['me', 910938291],
  ['mp', 1672621777],
  ['NA', 602214129],
  ['R',  83144621],
])

Sur les simples TI-Nspire TouchPad et TI-Nspire, pas de bibliothèque de constantes physiques.

Tu peux toutefois leur rajouter une bibliothèque de constantes complète en installant le logiciel KhiCAS, permettant d'obtenir en prime les unités.

Pour les simples TI-Nspire CX il est en théorie également possible de leur installer un logiciel KhiCAS même un peu plus étendu.
Toutefois en pratique l'ajout de ces outils nécessite de commencer par installer Ndless. Or la plupart des TI-Nspire CX que tu trouveras seront préchargées avec une version 4.5.1 ou supérieure que Ndless ne gère toujours pas. :'(


KhiCAS t'offre ici une bibliothèque de 27 constantes.

Les valeurs semblent toutefois être très anciennes, remontant au CODATA 1986 pour presque toutes celles que nous avons choisi de tester ici. Seule exception parmi notre sélection, la constante G qui correspond bizarrement au CODATA 2014.

Ce qui nous donne donc ici une erreur relative moyenne intermédiaire de 0,000606%.
Code: Tout sélectionner
error_m([
  ['e',  160217733],
  ['G',  667408],
  ['h',  66260755],
  ['k',  1380658],
  ['me', 91093897],
  ['mp', 16726231],
  ['NA', 60221367],
  ['R',  831451],
])

Hélas tout ceci sera indisponible en mode examen.

Tu peux toutefois obtenir la bibliothèque officielle et ce même en mode examen sur tes TI-Nspire TouchPad et TI-Nspire, en installant directement le système TI-Nspire CAS

Pour les simples TI-Nspire CX, de façon similaire il est en théorie possible de leur installer le système TI-Nspire CX CAS et donc d'accompagner les constantes d'unités.
Il suffit pour cela d'installer nBoot + ControlX si compatible, ou à défaut nLoader.
Toutefois en pratique l'ajout de ces outils nécessite ici encore de commencer par installer Ndless. Or comme la plupart des TI-Nspire CX que tu trouveras seront préchargées avec une version 4.5.1 ou supérieure... :'(


Sur NumWorks au commencement il n'y a rien. Toutefois tu peux installer très facilement le firmware tiers Omega. Omega reprend le firmware officiel tout en y faisant quelques ajouts, dont justement une bibliothèque de constantes physiques.

Nous excluons ici les constantes relatives aux atomes que nous compterons à part avec les applis de classification périodique des éléments, ce qui nous donne quand même un nombre formidable de 82 constantes ici, toutes avec description et unités.

Ici les valeurs sont copiées directement sur la ligne de saisie, ce qui interdit hélas tout accès automatique depuis un programme.

Quelques bizarreries également, les valeurs effectivement saisies ne correspondent pas toujours à celles des menus. Par exemple, la constante R des gaz parfaits perd son 4 final...

Les valeurs ne sont pas uniformes ici, semblant provenir de plusieurs sources et pas directement des banques CODATA officielles. Par exemple :
  • les constantes de Planck (h), de Boltzmann (k) et nombre d'Avogadro (NA) proviennent du CODATA 2018
  • la constante de gravitation universelle (G) et la charge élémentaire (e) semblent être des troncatures des valeurs du CODATA 2014
  • la masse de l'électron (me) semble être une troncature de la valeur du CODATA 2018
  • la masse du proton (mp) semble être un arrondi de la valeur du CODATA 1973
  • la constante des gaz parfaits (R) semblerait correspondre à la valeur du CODATA 2018, mais bizarrement avec des chiffres en plus cette fois-ci...

Tout ceci se ressent bien évidemment dans notre mesure de la pertinence des valeurs, avec ici 0,000765% d'erreur relative moyenne :
Code: Tout sélectionner
error_m([
  ['e',  160217662],
  ['G',  6674],
  ['h',  662607015],
  ['k',  1380649],
  ['me', 9109383],
  ['mp', 1672649],
  ['NA', 602214076],
  ['R',  83144626181532],
])

Précisons qu'Omega te permet à son tour d'installer l'application KhiCAS, avec les mêmes 27 constantes et capacités que pour l'édition TI-Nspire.

Mais grosse différence ici, KhiCAS restera disponible en mode examen ! :bj:

Enfin terminons avec la HP Prime. On y accède aux constantes via le menu Const affiché par
Shift
Units
.
Décocher
Valeur
permet d'obtenir les unités, et quant à la description on la récupère avec la touche
Help
.
En excluant les constantes mathématiques, nous obtenons ici un total de 21 constantes physiques ! :bj:

Il s'agit des valeurs du CODATA 2014, avec donc 0,000422% d'erreur relative moyenne :
Code: Tout sélectionner
error_m([
  ['e',  16021766208],
  ['G',  667408],
  ['h',  662607004],
  ['k',  138064852],
  ['me', 910938356],
  ['mp', 1672621898],
  ['NA', 6022140857],
  ['R',  83144598],
])


Précisons de plus que si tu bascules ta calculatrice en mode calcul formel avec la touche
CAS
, tu auras accès aux 27 constantes de KhiCAS déjà couvertes plus haut dans le contexte des TI-Nspire et NumWorks. Avec ici le gros avantage de pouvoir les appeler automatiquement depuis un programme.





Résumé des données, avec :
  • en bas les fonctionnalités officielles présentes à l'achat et persistant en mode examen
  • en haut l'ensemble des possibilités avec améliorations et/ou hors mode examen
Lien vers le sujet sur le forum: QCC 2020 épisode 6 : Constantes physiques (Commentaires: 3)

QCC 2020 épisode 7 : définitions écrans et zones graphiques

Nouveau messagede critor » 19 Aoû 2020, 10:49

5409
Quelle Calculatrice programmable Choisir 2020
(index des épisodes)

Episode 7 - Définitions écrans et zones graphiques




Plus tôt cette année nous avons donc traité des tailles des écrans des calculatrices graphiques affichant une conformité pour les examens 2021, l'un des éléments matériels les plus importants. Mais la taille ne fait pas tout, reste à voir la définition en pixels ainsi que nombre d'autres caractéristiques que nous allons méticuleusement tester en Python comme jamais auparavant. Prépare-toi à découvrir nombre de secrets... ;)



Nous allons donc te donner ici entre autres les caractéristiques et définitions des écrans.

Mais la définition elle non plus ne fait pas tout, car il faut également voir quelle est la zone graphique par rapport à ça, c'est-à-dire la zone dans laquelle l'utilisateur peut librement allumer des pixels.
L'accès en écriture à cette zone graphique se fait notamment via le grapheur de fonctions, ainsi que via des scripts ou programmes.
Sur nombre de modèles dont le système a été développé avant l'ère du Python, le langage de programmation historique utilise la même zone graphique que le grapheur de fonctions. Par contre, l'application Python sortie depuis pour nombre de ces modèles ne reprend pas toujours exactement la même zone graphique...

Nous effectuerons donc jusqu'à 2 tests par modèle :
  • un test de la zone graphique en utilisant soit le grapheur de fonctions soit un programme en langage historique
  • un test de la zone graphique en Python

Commençons dès maintenant à construire et expliquer devant toi notre protocole de test Python, avec un script universel tournant sur tous les modèles supportant officiellement ou officieusement ce langage. Nous adapterons si besoin dans d'autres langages pour les modèles ne comprenant pas encore le langage Python.

Les fonctions de lecture/écriture des pixels différant hélas d'un constructeur à un autre, il nous faut déjà de quoi permettre au script de détecter la plateforme sur laquelle il tourne :
Code: Tout sélectionner
def get_pf():
  c256 = True
  try:
    if chr(256)==chr(0):
      if "HP" in version():
        return 12
      else:
        if not white:
          return 11
        elif "Numworks" in version():
          return 9
        elif "Nspire" in version():
          return 7
        else:
          return 10
  except:
    c256 = False
  try:
    import sys
    try:
      if sys.platform == "nspire":
        try:
          import graphic
          return 6
        except:
          return 5
      elif sys.platform == "numworks":
        return 8
      elif sys.platform.startswith('TI-Python'):
        return 2
    except:
      return 4
  except:
    pass
  if not c256:
    return 1
  try:
    import kandinsky
    return 0
  except:
    try:
      import hpprime
      return 3
    except:
      pass
  return -1

Cette pièce d'horlogerie te retournera d'un simple get_pf() un identifiant couvrant tout l'éventail des solutions Python disponibles à ce jour pour calculatrices, et à interpréter de la façon suivante : :bj:
  • -1: inconnue (ordinateur ?...)
  • 0: NumWorks
  • 1: Casio Graph 90+E ou Graph 35+E II
  • 2: TI-83 Premium CE ou TI-84 Plus CE
  • 3: HP Prime (version alpha)
  • 4: Casio Graph 35+E/USB ou Graph 75/85/95 avec CasioPython
  • 5: TI-Nspire + MicroPython (nécessite Ndless)
  • 6: TI-Nspire + KhiCAS en mode MicroPython (nécessite Ndless)
  • 7: TI-Nspire + KhiCAS en mode de compatibilité Python (nécessite Ndless)
  • 8: NumWorks + KhiCAS en mode MicroPython (nécessite Omega)
  • 9: NumWorks + KhiCAS en mode de compatibilité Python (nécessite Omega)
  • 10: Casio Graph 90+E + KhiCAS en mode de compatibilité Python
  • 11: Casio Graph 35+E II + KhiCAS en mode de compatibilité Python
  • 12: HP Prime en mode CAS

Maintenant que nous connaissons donc la plateforme, reste à récupérer les fonctions d'accès aux pixels :
Code: Tout sélectionner
gp_prime = lambda x, y: GETPIX_P(x, y)
sp_prime = lambda x, y, c: PIXON_P(x, y, c)

def get_pixel_functions(pf):
  gp, sp = lambda: None, lambda: None
  if pf == 0:
    import kandinsky
    gp, sp = kandinsky.get_pixel, kandinsky.set_pixel
  elif pf == 1:
    import casioplot
    gp, sp = casioplot.get_pixel, casioplot.set_pixel
  elif pf == 2:
    import ti_graphics
    gp, sp = ti_graphics.getPixel, ti_graphics.setPixel
  elif pf == 3:
    import hpprime
    sp = hpprime.pixon
  elif pf == 5:
    from nsp import Texture
    canvas = Texture(320, 240, 0)
    gp, sp = canvas.getPx, canvas.setPx
  elif pf == 6 or pf == 8:
    import graphic
    gp, sp = graphic.get_pixel, graphic.set_pixel
  elif pf == 12:
    gp, sp = gp_prime, sp_prime
  return gp, sp

Voilà, d'un simple gp, sp = get_pixel_functions(get_pf()) nous obtenons les fonctions de lecture et écriture des pixels, sur tous les modèles où elles existent ! :bj:

Comment donc faire maintenant pour tester la taille de la zone graphique, rien qu'en lisant / écrivant des pixels ?
Et bien c'est très simple, tu ne vas pas être dépaysé(e). ;)
Nous allons procéder comme avec une tortue (langage Scratch ou module Python turtle).
Nous allons parcourir l'écran, en diagonale, en tentant de lire et modifier chaque pixel rencontré.

Pour savoir si un pixel est accessible en écriture, nous tenterons d'inverser sa couleur :
Code: Tout sélectionner
def invert_color(c):
  try:
    ci = [0, 0, 0]
    for k in range(3):
      ci[k] = 255 - c[k]
  except:
    ci = ~(c&0xffffff) & 0xffffff
  return ci

def is_pixel_writable(x, y, bad_pixel):
  if is_pixel_readable(x, y, bad_pixel):
    c0 = gp(x, y)
    sp(x, y, invert_color(c0))
    c = gp(x, y)
    return c != c0


Pour savoir si un pixel que l'on arrive à lire correspond bien à un pixel visible de l'écran, nous prendrons comme référence la mauvaise valeur de pixel retournée par une lecture clairement hors écran, coordonnées (-2, -2).
Dans le seul cas où l'on rencontre cette valeur qui peut très bien être justifiée, nous tenterons ici encore de l'inverser.
Code: Tout sélectionner
def is_pixel_readable(x, y, bad_pixel):
  c = None
  try:
    c = gp(x, y)
  except:
    pass
  if c != None:
    if c == bad_pixel:
      sp(x, y, invert_color(c))
      c = gp(x, y)
  return c != bad_pixel


Voici donc les fonctions principales utilisant tout ça :
Code: Tout sélectionner
def scr_test(x0, y0, dx0, dy0, test):
  bad_pixel = None
  try:
    bad_pixel = gp(-2, -2)
  except:
    pass
  x, y, dx, dy = x0, y0, dx0, dy0
  while not test(x, y, bad_pixel):
    x += dx
    y += dy
  if test(x, y - dy, bad_pixel): y = y0
  elif test(x - dx, y, bad_pixel): x = x0
  x0, y0 = x, y
  x += dx
  y += dy
  while(dx or dy):
    if not test(x - ((dx == 0) and dx0),y - ((dy == 0) and dy0), bad_pixel):
      if test(x - ((dx == 0) and dx0), y - ((dy == 0) and dy0) - dy0, bad_pixel): dy = 0
      elif test(x - ((dx == 0) and dx0) - dx0, y - ((dy == 0) and dy0), bad_pixel): dx = 0
      else: dx, dy = 0, 0
    x += dx
    y += dy
  return x0, y0, (x - x0) // dx0, (y - y0) // dy0

def scr_size():
  xrd0, yrd0, xrd, yrd = scr_test(0, 0, -1, -1, is_pixel_readable)
  xra0, yra0, xra, yra = scr_test(1, 1, 1, 1, is_pixel_readable)
  xr0, yr0 = xrd0 - xrd + 1, yrd0 - yrd + 1
  xr, yr = xra + xrd, yra + yrd
  xw0, yw0, xw, yw = scr_test(xr0, yr0, 1, 1, is_pixel_writable)
  print("at (" + str(xr0) + "," + str(yr0) + "): " + str(xr) + "x" + str(yr) + " readable pixels")
  print("at (" + str(xw0) + "," + str(yw0) + "): " + str(xw) + "x" + str(yw) + " writable pixels")
  return xr0, yr0, xr, yr, xw0, yw0, xw, yw


Il suffit donc d'appeler scr_size(), et tu vas vite comprendre avec notre premier exemple. :)

Prenons donc pour commencer les TI-83 Premium CE et TI-84 Plus CE, disposant d'un écran couleur 320×240= 76800 pixels.

On peut obtenir la taille de la zone graphique accessible au grapheur ainsi qu'aux programmes grâce à un tout petit calcul effectué par le programme ci-dessous à partir des bornes de la fenêtre graphique :
Code: Tout sélectionner
(Xmax-Xmin)/ΔX+1→W
(Ymax-Ymin)/ΔY+1→H
{W,H

Nous bénéficions donc pour nos graphiques et programmes d'une zone de 265×165= 43725 pixels, une zone extrêmement décevante ne permettant d'exploiter que 56,93% de la définition de l'écran. :mj:
Ce n'est pas pour rien que les plus grands créateurs de jeux programmaient en langage machine dit assembleur...

Passons maintenant dans l'application Python, qui n'offre les fonctions de pixels que sur TI-83 Premium CE Edition Python et TI-84 Plus CE-T Python Edition. Texas Instruments y a enfin corrigé ce gros défaut. Après donc parcours de l'écran en diagonale par notre tortue virtuelle, cette dernière nous reporte :
  • 321×241= 77361 pixels pouvant être lus à partir des coordonnées (-1, -1)
  • 321×210= 67410 pixels pouvant être écrits à partir des coordonnées (-1, 30)

Si le fonctionnement est simple, plusieurs bizarreries dans le résultat sont toutefois à traiter ici.

Déjà sur les deux zones différentes qui nous sont retournées :
  • la première signifie que l'on peut lire l'intégralité des pixels de l'écran
  • la deuxième ne retient donc plus que les pixels pouvant être modifiés, ici situés en-dessous de la barre d'état de 30 pixels de hauteur, et c'est celle-ci qui correspond à la zone graphique, la seule zone où la tortue a réussi à tracer son chemin comme tu vois ci-contre

Ensuite, selon notre tortue nous aurions donc un écran de 321×241 pixels, soit plus que les 320×240 pixels précédemment annoncés, avec :
  • une ligne de pixels d'ordonnée -1 pouvant être lus
  • une colonne de pixels d'abscisse -1 pouvant être lus, et également écrits à partir de l'ordonnée 30 marque le début de la zone graphique précédente

Or une tentative d'écriture donc sur cette dernière colonne ne donne visiblement rien à l'écran.

Soit il y a un bug dans notre code expliquant ce résultat différent de la réalité, et tu verras bien ci-dessous si la même anomalie est présente sur d'autres modèles ou pas avec exactement le même code.

Soit la chose vient de Texas Instruments. Nous aurions donc un écran de 320×240 pixels, mais avec en mémoire un buffer associé de 321×241 pixels. Ou bien c'est un bug, ou bien il y a une raison technique que nous ignorons à ce jour pour disposer en mémoire d'1 ligne et d'1 colonne supplémentaires de pixels sans aucune existence physique.

Pour notre classement, nous retiendrons donc ici une zone graphique correspondant à la réalité, c'est-à-dire de 320×210= 67200 pixels, soit 87,50% de la définition de l'écran, c'est déjà bien mieux qu'avec le langage historique ! :bj:

Passons aux TI-82 Advanced et TI-84 Plus T, qui t'offrent un écran monochrome de 96×64= 6144 pixels, un écran utilisant de plus des cristaux liquides noirs fort bien contrastés.

Voici le même programme pour calculer la taille de la zone graphique accessible au grapheur ainsi qu'aux programmes :
Code: Tout sélectionner
(Xmax-Xmin)/PasX+1→W
(Ymax-Ymin)/PasY+1→H
{W,H

Nous contrôlons donc 95×63= 5985 pixels, soit 97,41% de l'écran.

Voici maintenant venir la Casio Graph 90+E, avec son superbe écran couleur de 396×224= 88704 pixels.

Pour la zone graphique historique, petit problème de détection, nous n'avons pas de variable nous donnant le pas vertical (écart entre 2 pixels sur l'axe des ordonnées). Toutefois il nous suffit de choisir la fenêtre graphique par défaut qui a l'avantage de donner un repère orthonormal, et ensuite il suffit donc de calculer avec le pas horizontal :
Code: Tout sélectionner
(Xmax-Xmin)÷Xdot+1→W
(Ymax-Ymin)÷Xdot+1→H
{W,H

Via les graphes et les programmes, nous avons donc accès à une zone de 379×187= 70873 soit 79,90% des pixels de l'écran.

Mais voyons maintenant ce que cela donne dans l'application Python.

Et c'est extraordinaire, Casio ici aussi a fait un effort, ce sont pas moins de 384×192= 73728 pixels qui sont contrôlables en Python, soit 83,12% de l'écran ! :bj:

Notons que tu as également la possibilité d'installer l'application KhiCAS, une adaptation pour ta calculatrice du logiciel de mathématiques intégré Xcas par Bernard Parisse, enseignant-chercheur à l'Université de Grenoble.

L'environnement est également programmable avec une syntaxe proche du Python. Pas de fonctions pour contrôler individuellement les pixels ici, mais par contre nous y disposons d'une tortue dont on peut spécifier les déplacements en pixels. Tentons de tracer un rectangle le plus grand possible à l'aide du code suivant :
Code: Tout sélectionner
def scrtest(w, h):
  efface
  leve_crayon
  tourne_gauche 180
  avance w // 3
  tourne_gauche 90
  avance h // 2
  baisse_crayon
  for k in range(2):
    tourne_gauche 90
    avance w
    tourne_gauche 90
    avance h

C'est l'appel scrtest(383, 191) qui nous permet de rentrer le plus grand rectangle possible dans l'écran. Comme les paramètres concernent ici des déplacements de la tortue cela correspond à une zone graphique de 384×192= 73728, soit exactement comme avec l'application Python officielle.


Casio Graph 25+E II, ancienne Graph 25+E, Graph 35+E II, ancienne Graph 35+E et Graph 75+E utilisent des écrans de 128×64= 8192 pixels.

Casio Graph 25+E II, Graph 35+E II et Graph 35+E partagent le même écran aux cristaux liquides noirs agréablement contrastés.
Comme vu en épisode 1, le superbe écran de la Graph 75+E a l'avantage d'être sensiblement plus grand.
Il bénéficie en prime d'un éclairage optionnel.

L'ancienne Graph 25+E à la différence bénéficie d'un écran nettement plus petit.
Précisons surtout que l'écran utilise des cristaux liquides bleus qui donnent un assez mauvais contraste, nuisant beaucoup à la lisibilité.

En appliquant le même programme de test que sur Graph 90+E, nous obtenons une zone graphique historique utilisable de 127×63= 8001 pixels soit 97,67%.

Passons maintenant à l'application Python, ce qui ne concerne que la Graph 35+E II.

Ici c'est fantastique, nous contrôlons apparemment 100% de l'écran, soit 128×64= 8192 pixels.


La Graph 35+E II te permet en prime d'installer l'application KhiCAS, adaptation dédiée du logiciel de mathématiques intégré Xcas par Bernard Parisse, un environnement programmable avec une syntaxe proche du Python.

Très similaire à celle pour Graph 90+E on peut donc tester ce qu'elle offre de la même façon. C'est l'appel scrtest(127, 63) qui nous permet d'inscrire le plus grand rectangle dans l'écran, ce qui correspond donc ici encore à 128×64= 8192 pixels.


11396La Casio fx-92+ Spéciale Collège intègre un contrôleur écran gérant 192×64= 12288 pixels.
En réalité son écran est hybride, avec :
  • une zone matricielle de 192×63= 12096 pixels
  • 20 drapeaux indicatifs en haut d'écran, assimilables à des pixels mais aux formes non élémentaires
Nous sommes finalement sur un fantastique écran monochrome de 192×63+20= 12116 pixels.

La calculatrice est programmable dans un langage orienté tracé, avec des déplacements spécifiés en pixels. Nous pouvons donc ici encore tenter de dessiner un rectangle le plus grand possible.
Code: Tout sélectionner
?→A
?→B
Stylo relevé
Tourner de ↺ 180 degrés
Avancer de Ent(A÷2pixels
Tourner de ↺ 90 degrés
Avancer de Ent(B÷2pixels
Stylo écrit
Répéter 2
  Tourner de ↺ 90 degrés
  Avancer de A pixels
  Tourner de ↺ 90 degrés
  Avancer de B pixels

C'est en saisissant 191 et 46 que l'on arrive à tracer le plus grand rectangle, ce qui correspond donc à une zone graphique contrôlable de 192×47= 9024 pixels, soit 74,48%.


Les TI-Nspire, qu'elles soient à écran couleur ou monochrome, nous offrent toutes 320×240= 76800 pixels.

Pour déterminer la zone graphique utile, on peut utiliser un script Lua dimensionné en pleine page :
Code: Tout sélectionner
function on.paint(gc)
  w = platform.window
  s = tostring(w.width()) .. "x" .. tostring(w.height())
  gc:drawString(s, 0, 0)

Les scripts Lua contrôlent donc jusqu'à 318×212= 67416 pixels soit 87,78%.

A compter de la version système 5.0 avec les TI-Nspire CX II, le langage de programmation orienté fonctions historique s'enrichit de commandes graphiques dessinant dans une zone cette fois-ci non redimensionnable, mais qui fait elle aussi 318×212= 67416 pixels.

Nous ne disposons toujours pas de préversion de la future mise à jour TI-Nspire CX II avec Python, mais nous supposons que ce sera à nouveau la même zone graphique : 318×212= 67416 pixels.

Sur les TI-Nspire monochromes, ainsi que les anciennes TI-Nspire CX si non encore mises à jour en version 4.5.1 ou supérieure, il est possible d'y installer Ndless puis ensuite MicroPython.
On y contrôle alors 100% de l'écran, soit 320×240= 76800 pixels. :bj:

Sur les anciennes TI-Nspire CX, Ndless permet également l'installation d'une version de KhiCAS intégrant une version étendue de ce même interpréteur Python.
Notre script universel de test détecte ici un peu moins, 320×222= 71040 pixels pouvant à la fois être lus et écrits.


La NumWorks t'apporte un écran de 320×240= 76800 pixels.

Pour les graphes nous n'avons pas trouvé de moyen automatique de mesurer la fenêtre graphique. Alors tant pis comptons les pixels à la main, ci-contre 320×156= 49920 pixels.

L'application Python quant à elle te permet de contrôler 320×222= 71040 pixels.

Si tu installes le firmware tiers Omega, tu peux ensuite installer une application KhiCAS intégrant son propre interpréteur MicroPython. Mais pas de changement, ici encore c'est 320×222= 71040 pixels.


La HP Prime t'offre un écran de 320×240= 76800 pixels.

Le mode CAS y disposant d'une compatibilité syntaxique Python, il est possible d'y exécuter directement notre script de test.

La compatibilité est très loin d'être automatique, il y a nombre de contraintes à respecter dans l'écriture, mais notre script a été conçu dès le départ en en tenant compte. Si tu y vois des blocs pas très optimisés, c'est pour ça. ;)

320×240= 76800 pixels sont donc à disposition pour tes programmes, soit 100% ! :bj:

Pas possible de tester de la même façon l'application Python de la version alpha publiée par erreur en octobre 2019. En effet son module prime y transcrit bien la fonction graphique historique pixon() pour écrire des pixels, mais pas encore la fonction getpix() pour les lire. :'(

Toutefois jusqu'à présent tous les constructeurs ont proposé dans leur Python officiel une zone graphique identique ou plus étendue que celle de leurs graphiques et programmes en langage historique, c'est probablement ici encore 320×240= 76800, ce que l'on confirme en allumant quelques pixels aux frontières de l'écran.


La Casio fx-CP400+E inclut niveau définition de loin le meilleur écran tous modèles confondus, 320×528= 168960 pixels. :bj:

Niveau zone graphique utile maintenant, c'est compliqué.

En orientation portrait nous avons par défaut 309×185= 57165 pixels.

Si tu te donnes la peine de redimensionner la fenêtre graphique en pleine page, ce seront 309×401= 123909 pixels.

Tu peux également utiliser ta calculatrice en orientation paysage. Mais pas d'accéléromètre ici et donc rien d'automatique, c'est un bouton tactile physique à côté de l'écran qui est à utiliser à chaque fois que tu éprouves le besoin de changer l'orientation, un peu comme sur la console portable Lynx d'Atari.

Par défaut tu disposes dans ce sens d'une zone graphique de 517×81= 41877 pixels, une zone que nous trouvons bien trop écrasée et donc peu adaptée à étudier autre chose que des fonctions trigonométriques.

Si tu redimensionnes en pleine page, tu peux étendre la chose à 517×193= 99781 pixels :


Bref, que retenir de tout ça pour confrontation à la concurrence ?

Déjà on peut préciser qu'il est impossible d'exécuter des programmes en orientation paysage, donc autant prendre l'orientation portrait commune.
Optons donc pour les 309×401= 123909 pixels, soit 73,33%.


Enfin, si Maman revient des courses de rentrée avec une Esquisse GCEXFR ou Lexibook GC3000FR, tu auras sans doute à t'interroger sur le sens caché de ce message d'une extrême violence. :troll:

Le packaging est mensonger, te présentant via un sticker un écran à cristaux liquides noirs, qui se transforme une fois allumé en cristaux liquides bleus fort mal contrastés et ainsi désagréables à lire, et contrairement à tous les modèles précédents aucune fonctionnalité n'a été prévue pour en régler le contraste ! :mj:
11403846411490


1149211491L'écran n'est pas matriciel mais hybride. Tellement dur à lire que pour mieux t'en détailler l'intégralité des capacités nous t'avons fait un petit montage ci-contre.
Nous avons donc :
  • une zone matricielle dédiée aux graphiques de 47×32= 1504 pixels en bas à gauche soit un timbre poste, littéralement... :#roll#:
  • une zone matricielle complémentaire de pixels 40×8= 320 pixels en bas à droite, qui par juxtaposition permet la saisie de tes calculs et l'affichage de leurs résultats sur 87 pixels de largeur
  • 2 afficheurs numériques à 7 segments dédiés à l'affichage des exposants de 10 pour les résultats en notation scientifique
  • 19 autres drapeaux de formes diverses
Il s'agit donc d'un écran assimilable à du 47×32+40×8+2×7+19= 1857 pixels.

Que contrôle-t-on dans tout ça ? Déjà pas grand chose car la machine n'est pas programmable malgré la présence trompeuse d'une touche
PROG
au clavier, une inadéquation manifeste aux programmes scolaires, et encore ce n'est même pas le pire de ses défauts de ce point de vue... :#roll#:

12780Bref pour tester la zone graphique (in)utile, il ne nous reste plus que les graphiques. Par défaut nous avons donc un repère orthonormal, avec un pas de 0.2 entre deux pixels horizontaux ou verticaux.
Récupérons les bornes de la fenêtre, une par une car la technologie archaïque qu'il semble y avoir sous le capot est incapable d'afficher simultanément plusieurs nombres à l'écran :
12776127771277812779

Allons-y pour les calculs :
  • $mathjax$\frac{\left(4.6-\left(-4.6\right)\right)}{0.2}+1=\frac{\left(4.6+4.6\right)}{0.2}+1\\
    \phantom{\frac{\left(4.6-\left(-4.6\right)\right)}{0.2}+1}=\frac{9.2}{0.2}+1\\
    \phantom{\frac{\left(4.6-\left(-4.6\right)\right)}{0.2}+1}=46+1\\
    \phantom{\frac{\left(4.6-\left(-4.6\right)\right)}{0.2}+1}=47$mathjax$
  • $mathjax$\frac{\left(3-\left(-3\right)\right)}{0.2}+1=\frac{\left(3+3\right)}{0.2}+1\\
    \phantom{\frac{\left(3-\left(-3\right)\right)}{0.2}+1}=\frac{6}{0.2}+1\\
    \phantom{\frac{\left(3-\left(-3\right)\right)}{0.2}+1}=30+1\\
    \phantom{\frac{\left(3-\left(-3\right)\right)}{0.2}+1}=31$mathjax$
11499Zone graphique utilisable donc de 47×31= 1457 pixels.
Oui, la zone matricielle correspondant sur l'écran faisant 32 pixels de hauteur, il y a donc physiquement et bêtement une ligne de 47 pixels qui ne s'allument jamais... :o

Ce qui nous permet en passant de dénoncer un autre mensonge de l'emballage et du manuel, si tu comptes bien la sinusoïde donnée en exemple y est en effet tracée sur une zone graphique 48×32= 1536 pixels, soit une surestimation de plus de 5%... Forcément avec ça, la sinusoïde réellement obtenue est loin d'être aussi belle que celle de l'emballage... :#roll#:
8498


Comment peut-on avoir un packaging aussi mensonger, aussi trompeur, sans le faire exprès ?... Ce ne sont plus des astuces marketing là, c'est de l'arnaque pure et simple, les marques concernées regorgent visiblement de grands talents dans ce domaine... des pratiques irrespectueuses du consommateur et dans tous les cas indignes de notre pays, un crime contre la jeunesse, contre l'éducation et donc contre l'avenir, et par conséquent contre l'humanité ! :mj:




Résumé donc des capacités des différents écrans, avec :
  • en bas les capacités officielles de la machine en mode examen
  • en haut les possibilités hors mode examen




Crédits images : bande dessinée
Lien vers le sujet sur le forum: QCC 2020 épisode 7 : définitions écrans et zones graphiques (Commentaires: 9)

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1367 utilisateurs:
>1352 invités
>11 membres
>4 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)