zpalm a écrit : ↑19 mai 2022 20:05
C.Ret a écrit : ↑19 mai 2022 18:30
Spectaculaire n'est-ce pas ?
En tout cette méthode va me permettre d'optimiser considérablement mes code pour Ti58C, HP-15C et TI-57 LCD ou HP-41X, héhéhé...
Je suis impatient de voir le résultat !
Une première version utilisant la dernière mouture de ce dernier algorithme, tient en 57 pas (et 88 bytes - sans le LBL "MPO109 et le END final), utilise les registres de R00 à R09, la pile mais ni le registre L, ni le registre Alpha. Il n'a besoin d'aucun module, ni extension mémoire, il tourne parfaitement sur une HP-41C de base.
Par commodité, il utilise les labels locaux A et E :
A - Permet de saisir une nouvelle paire de nombres : en mode user, pressez A puis à l'invite 1. saisir le premier nombre puis continuer en pressant R/S. Saisir le second nombre lors de l'invite 2. et pressez sur R/S pour avoir les résultats.
E - Place l'UNION et l'INTERSECTION respectivement dans les registres X: et Y:. On peut répéter E à volonté afin de replacer les résultats dans X et Y.
Ainsi pour effectuer l'exemple donné par
zpalm, activer le programme (si celui-ci n'est pas le seul en mémoire) :
En mode USER pressez sur [ A ].
Le mode d'affichage FIX 0 n'est pas indispensable, l'utilisateur peut le changer à loisir.
La HP-41C affiche 1.0000, saisir alors le premier nombre : 1142 puis continuer en pressant [R/S]
Quelques oies passent de gauche à droite puis 2.0000 s'affiche invitant l'utilisateur à saisir le second nombre: 312 et valider en pressant [R/S]
Encore quelques petites secondes d'oiseaux migrateurs volant vers l'Est puis on obtient l'affichage de l'UNION:
Une pression sur [X<>Y] permet d'avoir l'INTERSECTION:
- MPO109 HP-41C preview U and I without Alpha.png (52.26 Kio) Vu 2701 fois
L'utilisateur attentif remarquera qu'avec cet exemple ne contenant pas de chiffre supérieur à 4, l'INTERSECTION est à peu près visible dès l'affichage de l'UNION. Ce petit indice dévoile une partie de la stratégie utilisée. héhé