Je vais vous présenter une petite astuce pour centrer horizontalement un nombre ou un texte qui est contenu dans une variable sur l'écran graphique, ce qui n'est pas facile si cette valeur varie au cours de l’exécution du programme.
Pour un nombre :
- Code: Select all
1+ent(log(abs(**Votre variable contenant le nombre**→L
Texte(**Coordonnées verticales**,.5(94-4L),**Votre variable contenant le nombre**
Si votre nombre est un nombre décimal, remplacez la première instruction par :
- Code: Select all
non(**Votre variable contenant le nombre**)+som(0 ou partDéc(abs(**Votre variable contenant le nombre**10^(somCum(binomFRép(13,0))-2-partEnt(log(abs(**Votre variable contenant le nombre**+non(**Votre variable contenant le nombre**→L
Sur TI-83 Premium CE avec OS 5.2 minimum, il est possible de remplacer la première instruction par l'instruction suivante (qui est beaucoup plus simple, mais pas compatible avec toutes les calculatrices) :
- Code: Select all
length(toString(**Votre variable contenant le nombre**→L
Si vous voulez afficher votre nombre en grand format, remplacez la dernière instruction par :
- Code: Select all
Texte(-1,**Coordonnées verticales**,.5(94-6L),**Votre variable contenant le nombre**
Explications :
L'instruction 1+ent(log(abs(**Votre variable contenant le nombre**→L calcule le nombre de chiffres composant le nombre, et la stocke dans la variable L.
L'instruction Texte(**Coordonnées verticales**,.5(94-4L),**Votre variable contenant le nombre** affiche ce nombre sur l'écran graphique, centré. Le calcul .5(94-4L) soustrait au nombre de pixels horizontaux totaux de l'écran (94) le nombre de pixels composants le nombre (4 car chaque caractère est composé de 4 pixels horizontaux) et divise le tout par 2 (dans ce cas je multiplie par 0.5 pour optimiser le calcul, ce qui revient au même).
Pour un texte :
C'est plus simple, car une instruction existe pour connaître le nombre de caractères d'une chaîne : longueur(
Ne fonctionne que pour les variables Chn/Str.
- Code: Select all
longueur(**Votre chaîne de caractère**→L
Texte(**Coordonnées verticales**,.5(94-4L),**Votre chaîne de caractère**
Si vous voulez afficher votre texte en grand format, remplacez la dernière instruction par :
- Code: Select all
Texte(-1,**Coordonnées verticales**,.5(94-6L),**Votre chaîne de caractère**
Exemple :
Voici une capture d'écran d'un de mes programmes (TI-Chrono, disponible ici) qui centre automatiquement le nombre de secondes restantes (ici dans la fonction minuterie, je les ai mis à 10 000 pour que vous voyez bien l'effet produit) :
Voilà pour cette astuce !
Crédit :
Codes pour connaître le nombre de chiffres composant une variable trouvé ici : http://tibasicdev.wikidot.com/number-one-liners