Gestion CASIO
Accueil ] L'INSAS ] I. 1ère année ] II. 2ème année ] III. 3ème année ] Programmes CASIO ] Votre Serviteur ] Liens ] Me contacter ]

 

Géométrie CASIO
Photog. CASIO
Topographie CASIO
Compensation CASIO
Géodésie CASIO
Gestion CASIO

GERPOINT : Gestion de points et de leurs coordonnées x, y

Configuration requise : 921 octets pour le programme principal + 3000 octets pour 100 points ou 5000 pour 200 (place occupée dans les listes) + List 1, 2 et 6 (File 1) pour 100 points voire List 1, 2, 4, 5 et 6 pour 200 points.

Sous-programmes : RESETPOINT et MENU (facultatifs)

Propriétés : stocke, efface, rappelle des numéros de points et leurs coordonnées dans un repère à deux dimensions, affiche le nombre de points stockés et les numéros correspondants. Tous les autres programmes travaillant sur des coordonnées font appel, en option ou non, aux points mis en mémoire par ce gestionnaire.

Le principe est le suivant : les coordonnées x, y des points sont stockées respectivement dans les listes 1 et 2 (File 1) de la calculette (ou listes 1, 2, 4 et 5 pour doubler les points), la liste 6 servant à l'aspect gestion du nombre de points. Chaque élément d'une liste occupe 10 octets, que sa valeur soit 0 ou Pi, c'est pourquoi chaque point occupe un total de 20 octets + 10 (2 listes à 10 octets chacune (List 1 et 2) + 1 à 10 (List 6)) ou 50 octets (4 listes à 10 octets (List 1, 2, 4, 5) + 1 à 10 (List 6)).

L'intérêt du programme n'est valable qui si vous créez de manière permanente 3 listes (l1, l2 et l6) remplies d'un nombre constant de 0. Ainsi, j'ai créé des listes 1, 2 et 6 (File 1, j'insiste) de 100 éléments chacune, chaque élément égal à 0. Ce qui signifie que j'ai à disposition une mémoire de 100 points, ce qui est largement suffisant pour tous les calculs (au-delà, vous utiliserez un PC...). Vous pouvez aussi remplir pareillement les listes 4 et 5, ce qui permet de gérer 100 points supplémentaires.

Pour créer ces listes, il suffit de remplir l'une d'entre elles du nombre de zéro voulu (manuellement, ça va très vite, ou alors en utilisant la fonction Seq si vous savez vous en servir; de toute façon vous ne le ferez qu'une seule fois). Ensuite vous copiez cette liste dans les autres listes en cause (en mode RUN, touche Option, List (F1), tapez List 1 -> List 2 par exemple).

Remarque importante : le programme est lié à d'autres, notamment NEWREPER et les programmes qui calculent des points, qui sont entièrement fondés sur la valeur de 100 points lors de l'enregistrement des résultats. En effet, les deux autres listes 4 et 5 qui sont parfois utilisées dans mes programmes pour gérer 200 points au lieu de 100 nécessitent des calculs de modulo pour ne pas planter la machine. Vous avez donc les choix suivants qui s'offrent à vous :

ou vous pompez entièrement le programme original et vous gérez 200 points : dans ce cas créez des listes 1, 2, 4, 5 et 6 de 100 éléments égaux à 0. Cependant je vous avoue que la gestion de 200 points est inutile : elle a été implémentée pour pouvoir avoir en vis-à-vis des points dans deux repères différents, grâce au programme NEWREPER. La solution suivante est donc préférable....
vous pompez entièrement le programme original, vous ne créez que les listes 1, 2 et 6, et vous gérez 100 points , ce qui est largement suffisant et prend moins de place. En plus, tous les autres programmes fonctionneront correctement quand même en ce qui concerne les rappels de points. Le seul "dommage" si je puis dire, c'est que les autres programmes faisant appel à celui-ci, possèdent des lignes de code supplémentaires pour gérer les 200 points, d'où un poids en octets légèrement accru...
vous pompez juste les lignes de code, vous vous amusez à comprendre leur fonctionnement (complètement tordu, je sais) et vous gérez ce que vous voulez en les ré-écrivant.

(Soupir). La vache, je pensais pas que ce programme était aussi pervers !

Quoi qu'il en soit, vous pouvez maintenant gérer vos points :

Mode d'Emploi : lancez le programme.

Un menu vous propose 0. Gestion, 1. Lecture, 2. Stocke et 3. Erase. A ce niveau, si vous pressez (fermement) :

la touche 0 : patientez 2-3 secondes, puis on vous affichera le nombre de points en mémoire et leurs numéros (un point en mémoire est réputé avoir au moins une de ses coordonnées non nulle, et la gestion ne concerne que les 100 premiers points (c'est pour ça que la gestion de 200 points est foireuse au final hin, hin)). Une fois l'affichage terminé, en pressant EXE vous revenez au menu.
la touche 1 : on vous demande un numéro de point (compris entre 1 et 100 ou 200 selon votre choix de listes gérées), puis les coordonnées x, y s'affichent. Si vous tapez 0 au numéro, vous revenez au menu. Si vous tapez 999 vous accédez directement au programme MENU
la touche 2 : on vous demande un numéro de point (compris entre 1 et 100 ou 200 selon votre choix de listes gérées), puis les coordonnées x, y . Si vous tapez 0 au numéro, vous revenez au menu. Si vous tapez 999 vous accédez directement au programme MENU. Si le numéro de point est déjà utilisé, on vous demande si vous voulez l'écraser (oui : 1, non : autre touche); si vous répondez non, on vous redemande un numéro et les coordonnées
la touche 3 : appelle le programme RESETPNT qui efface tout ou partie des points (remplace les valeurs par 0 en fait)
F6 : appelle le programme MENU
AC/ON ou EXIT : ferme le programme (à la barbare pour la première touche et subtilement pour la seconde...)

Conseils : l'utilisation tout au long de deux années de ce programme m'amène aux conclusions suivantes : il est plus rapide de rentrer directement les coordonnées dans les listes 1 et 2; la gestion de 200 points est fastidieuse, inutile, chiante; pour ceux que ça intéresse, je conseille de chercher un moyen de gérer un nombre variable de points, en ne stockant que ceux effectivement utilisés au lieu de remplir des listes avec des zéros. Le numéro de point pourra être stocké dans une autre liste par exemple et permettra de s'affranchir de la limite de 100. En fait c'est même facile à réaliser, mais moi je n'en ai plus rien à faire, d'autant plus que ce programme est très efficace au final.

Téléchargement :                    gerpoint.fxi / gerpoint.txt

GETKEY : Numéro Usine des Touches Casio

Configuration requise : 27 octets

Sous-programmes : aucun

Propriétés : vous donnera le numéro usine des touches de la machine que vous presserez. C'est très utile lorsque vous programmez des menus avec des touches à presser, puisque les lignes de code devront contenir le code usine des touches en question (Prog / I/O / Gtky lorsque vous éditez sous la casio).

Le principe consiste en une boucle qui vérifie que l'entrée touche (celle que vous pressez et dont le numéro usine est activé tout le temps qu'elle est enfoncée) est égale ou non à un nombre compris entre 20 et 80 (les numéros usine sont compris dans cet intervalle). Si la calculette trouve un nombre correspondant à celui de la touche choisie, il l'affiche. Comme le programme tourne en permanence sur 60 valeurs successives, cela explique le temps de latence à l'utilisation (voir ci-dessous).

Mode d'Emploi : lancez le programme.

Appuyez sur une touche jusqu'à ce qu'un numéro s'affiche. Le numéro 31 correspond à la touche EXE, donc si le numéro apparaît, c'est que lorsque vous avez appuyé sur EXE pour lancer le programme, ce dernier s'est lancé tellement vite qu'il vous a donné le numéro de la touche !

Téléchargement :                    getkey.fxi / getkey.txt