Joli, ce dernier code ressemble un peu à ce que j'ai mis sur mon HP-41C.
Par contre, c'est quoi l'instruction SDR 001 ?
J'ai trouvé le moyen de dépasser la limite des dix cartes par main sur mon HP-41C avec le code suivant:
Code : Tout sélectionner
01 LBL"MPO116
02 CLRG CLA
04 LBL 00
05 ARCL X
06 LBL 01
07 STO 00 10 ST/ 00 MOD X>0? ISG IND X GTO 02
14 RCL 10 RCL IND Y 3 X>Y? GTO 02
19 X<> T * X>Y? STO 10
23 LBL 02
24 RCL 00 INT X>0? GTO 01
28 RCL 10 AVIEW STOP
31 GTO 00
.END.
Evidemment, ce code est un tout petit peu plus long que celui ne pouvant traiter qu'une main d'au plus dix chiffres.
L'astuce consiste à accumuler les mains d'au plus dix cartes en les séparant d'une pression sur la touche R/S.
On utilise f-RTN pour indiquer une nouvelle série de mains.
On saisie une main et on presse R/S, cette main est ajoutée au cumul.
Le registre alpha accumule la composition des mains et les registre R01 à R09 le nombre d'occurrences de chaque chiffre. R10 mémorise le score maximal et R00 sert à la décomposition numérique de la saisie.
Il est recommandé d'utiliser le format d'affichage FIX 0 CF 29.
Par exemple:
11 XEQ "MPO116" affiche la main "11" presser sur [<- ] pour voir apparaitre le score 0.
1 R/S affiche le cumul des mains saisies "111" une pression sur [ <- ] affiche le score 3.
Pour recommencer, on réinitialise à l'aide de l'instruction RTN :
shift RTN 4444 R/S affiche "4444" puis [ <- ] affiche le score 16.
999 R/S affiche "4444999" et [<- ] affiche le score 27.
On peut aussi faire
shift RTN 4444 R/S qui affiche "4444" taper 999 R/S qui affiche 4444999 et presser sur [ <- ] pour voir le score 27.
ou
4444999 shift RTN R/S qui affiche "4444999" et presser [ <- ] qui affiche 27.
On peut accumuler autant de mains que l'on souhaite. Le registre ALPHA sera limité aux 24 derniers chiffres, mais pas le score qui fait le décompte de toutes les entrées.
A tout moment , une pression sur la touche [ALPHA] affiche la main cumulée.