TI-62 Galaxy

Ici, on fait dans le petit, le LCD qui déchire sa race, on y cause même calculatrices quand on est en manque !

Modérateur : Politburo

Répondre
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

Regarde la ligne 25 de cet extrait de code :

Code : Tout sélectionner

......
22       2nd Lbl 1
23       RCL 7
24       + 
25       CE  
26       ×
27       .
28       1
29       =
30       R/S
l'Ordinateur de poche n°3 Page 49
Pourquoi l'auteur n'a pas utilisé tout simplement RCL 7 en ligne 25 comme suit : :?:

Code : Tout sélectionner

......
22       2nd Lbl 1
23       RCL 7
24       + 
25       RCL 7  
26       ×
27       .
28       1
29       =
30       R/S
Lis aussi les deux avant derniers paragraphes de cet article toujours en page 49. Je pense que l'auteur a voulu montrer une autre possibilité d'utilisation de la commande CE :idea:
Modifié en dernier par Andromede le 15 janv. 2022 18:36, modifié 2 fois.
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3405
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: TI-62 Galaxy

Message par C.Ret »

tyann a écrit : 15 janv. 2022 07:47En fait pour annuler une opérande il suffit d'en taper une autre.
Cela n'est vrai que pour une opération de priorité AOS inférieure ou égale.

Si par exemple le calcul d'une division est en attente, si l'on tape par erreur sur l'addition (touche [+]), on peut rattraper le coup avec par exemple la soustraction (touche [ - ]).
Par contre, si l'on a taper par erreur sur la touche multiplication (touche [ x ]) alors le calcul en attente de la division est effectué et l'on ne peut plus rattraper le coup en pressant sur touche de la soustraction sans obtenir un résultat faux.

Dans le manuel de la TI-62, on voit bien que la fonction ON (Clear All/Reset) est obtenue en pressant deux fois sur la touche [ON/C]. C'est l'équivalent de la touche [CLR] d'une Ti-57.
Une seule pression sur la touche [ON/C] est équivalente à [CE] (Clear Entry)

Ce que Andromède prend pour une copie du registre d'affichage est en fait une propriété du système AOS qui est une astuce pour éviter la répétition de saisies de nombres identiques.

On obtient la même astuce avec les parenthèses (touche [ ( ]) qui permet d'éviter la répétition de la saisie précédente en appliquant directement une opération.

Ainsi pour calculer 4 × 13.5 ÷ √( 54 - 18 ) = 9 on peut éviter la saisie de 54 qui est à l'affichage en tapant : 4 [ × ] 13.5 [ ÷ ] [ ( ] [ - ] 18 [ ) ][ √x ][ = ] doit afficher 9. (J'ai eut du mal à vérifier sur ma TI-57 LCD à cause de son mauvais clavier :x )

De la même façon, et comme s'évertue à nous le répété à juste titre badaze, la fonction [CE] (touche [ON/C] une seule fois ) efface le dernière entrée et donc revient (comme pour le 54) à répéter ce qui était affiché si l'on enchaine directement par une opération sans ressaisir de valeur numérique.

Ce n'est pas le [CE] (ou le [ON/C] qui reprend la valeur affichée, c'est l'utilisation d'une touche d'opération sans premier argument. L'ouverture de la parenthèse ne faisant que de "conserver" la valeur affichée tout en créant un niveau de priorité supérieure.

De la même façon, si à la fin d'un calcul le résultat affiché est 9. En pressant directement sur [ ÷ ] 2 [ = ] on enchaine le calcul par 9/2 qui affiche 4.5


C'est histoire de Direct AOS(tm) me donne mal à la tête. C'est de plus assez mal expliqué dans le manuel où il n'y a pas (contrairement aux manuel HP de la même époque) de chapitre expliquant comment corriger d'éventuelles erreurs de saisies.

C'est peut-être tout simplement que, contrairement au RPN, le principe même du calcul direct façon AOS rend difficile toute opération de "récupération en cas d'erreur de saisie. Et qu'il faut mieux à chaque fois presser deux fois sur [ON/C] et recommencer tout le calcul depuis le tout début !
SHARP PC-1211 PC-1360 EL-5150 PC-E500 | Commodore C=128D | Texas Instruments Ti-57LCD Ti-74BASICalc Ti-92II Ti-58c Ti-95PROCalc Ti-30XPROMathPrint | Hewlett-Packard HP-28S HP-41C HP-15C HP-Prime HP-71B | CASIO fx-602p | NUMWORKS | Graphoplex Rietz Neperlog | PockEmul | Sommaire des M.P.O. | Ma...dov'il sapone.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3405
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: TI-62 Galaxy

Message par C.Ret »

Andromede a écrit : 15 janv. 2022 18:19 Regarde la ligne 25 de cet extrait de code :

Pourquoi l'auteur n'a pas utilisé tout simplement RCL 7 en ligne 25 comme suit : ?
Parce qu'il fait cela, il n'ajoute pas 10% au total en cours mais uniquement 10% du contenu du registre n°7.

Ce qui ne donne pas le bon résultat !

L'opération [ + ] après le [RCL[ 7 ]] termine toutes les additions en cours et en attente du programme.
Le [CE] ne fait rien car rien n'a été saisi (on trouve dans les magasines de l'époque et sur les Internets d'hier et d'aujourd'hui des programmes bizarres et souvent mal foutus !) mais du coup
la multiplication [ × ] suivante s'applique à ce total intermédiaire ce qui ajoute 10% au total.

C'est une façon de faire évitant les parenthèses afin que le code ne soit pas limité dans le nombre de termes de la somme; le dépassement du nombre autorisé de parenthésage arrêtant le programme sur une erreur.

La version que tu proposes ne donne pas le même résultat, elle augmente le total que de 10% du contenu du registre R7.
SHARP PC-1211 PC-1360 EL-5150 PC-E500 | Commodore C=128D | Texas Instruments Ti-57LCD Ti-74BASICalc Ti-92II Ti-58c Ti-95PROCalc Ti-30XPROMathPrint | Hewlett-Packard HP-28S HP-41C HP-15C HP-Prime HP-71B | CASIO fx-602p | NUMWORKS | Graphoplex Rietz Neperlog | PockEmul | Sommaire des M.P.O. | Ma...dov'il sapone.
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

Merci C.Ret
C'est très clair maintenant :D
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

J'ai essayé de réadapter le code précédent (voir l'Ordinateur de poche n° 3 en page 49) sur la TI-62 en utilisant toutes les explications claires et détaillées de C.Ret et badaze. Je voulais surtout comprendre précisément la différence avec une TI-57 en termes de gestion de la mémoire, du registre d'affichage et du registre t . Comme 1ère tentative, j'ai réussi à obtenir un programme de 37 pas, c'est-à-dire 05 pas de moins que celui proposé dans le magazine.

Code : Tout sélectionner

00	x<-->t
01	3
02	0
03	0
04	0
05	x>=t
06 	GTO 1
07	5
08	0
09	0
10	0
11	x>=t
12	GTO 2
13	x<-->t
14	x
15	1
16	.
17	0
18	5
19	=
20	R/S
21 	LBL 1
22	x<-->t
23	x
24	1
25	.
26	1
27	=
28	R/S
29	LBL 2
30	x<-->t
31	x
32	1
33	.
34	0
35	8
36	=
37	R/S
On pourrait peut-être encore réduire le code :?: 8O
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Avatar du membre
Schraf
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 499
Enregistré le : 05 mars 2020 20:45
Contact :

Re: TI-62 Galaxy

Message par Schraf »

Intéressante cette histoire de touche CE...

Je n'ai pas regardé ce que devait faire ton programme @Andromede, mais en remplaçant 5000 et 3000 par 5 EE 3 et 3 EE 3 on gagne 2 pas.
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

En fait, il s'agit de la réadaptation sur TI-62 du programme de la page 49 de l'Ordinateur de poche n°3. Il m'a personnellement intéressé car il traite du registre t, des tests et des branchemens auquels on rajoute le comportement de la commande CE de la TI-57 qui a suscité notre curiosité.
Le programme calcule les nouveaux salaires des employés selon un certain taux.
10 % d'augmentation si le salaire net est inférieur à 3000
8% d'augmentation si le salaire est compris entre 3000 et 5000
5% d'augmentation si le salaire est supérieur à 5000
L'auteur l'a fait en 40 pas.
Avec ta proposition on économise effectivement 02 pas. ce qui très intéressant. :D Seulement, les salaires sont affichés en 10 puissance 3 (donc ils ont gardé le format EE), ce qui ne permet pas une lecture intuitive du salaire. :( Il faudrait faire INV EE à chaque résultat. :roll:
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Avatar du membre
tyann
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 845
Enregistré le : 06 oct. 2012 14:37

Re: TI-62 Galaxy

Message par tyann »

Bonsoir
Une version en 35 pas

Code : Tout sélectionner

00	x<-->t
01	3
02	0
03	0
04	0
05	x>=t
06 	GTO 1
07	5
08	0
09	0
10	0
11	x>=t
12	GTO 2
13	SBR 3
14	0
15	5
16	=
17	R/S
18	LBL 1
19	SBR 3
20	1
21 	=
22	R/S
23	LBL 2
24	SBR 3
25	0
26      8
27	=
28	R/S
29	LBL 3
30	x<-->t
31	x
32	1
33	.
34	RTN
Ti(s) 60, 62 Galaxy, 66, 67 Galaxy, 68, 74 Basical 80, 81, 82, 83+, 83 CE, 84+SE, 85, 86, 89, 89 titanium, 92, 95 Procalc, v200, nSpire cx
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

Excellent coup d'optimisation :!: :idea:
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Avatar du membre
badaze
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 8385
Enregistré le : 12 févr. 2007 18:36
Localisation : Pas très loin de Lyon
Contact :

Re: TI-62 Galaxy

Message par badaze »

Il est possible de gagner un pas en factorisant

Code : Tout sélectionner

= 
R/S
qui est répété 3 fois.
Les 2 1ère on remplace par GTO 4 et pour la 3ème on ajoute un LBL 4 avant.
Tout est bon dans le pocket.
Moi j'aime tout.... Casio, HP, Sharp, TI et les autres sauf que les TI semblent ne pas m'aimer :(
http://www.emmella.fr
Mes Casio - HP - Sharp - TI
Homme invisible.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3405
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: TI-62 Galaxy

Message par C.Ret »

La version de Tyann est excellente. J'aime bien la façon dont sont utilisés les appels du sous-programmes n°3 pour initier le facteur d'accroissement et comme la fin du facteur est terminée après l'apple. Très malin !!

Je n'est pas été aussi adroit, ( je ne programme plus assez en AOS ) je suis parti vers une formule du style :
STO0 * ( 215 - 2 * SIGN( RCL0 - 3E3) - 3 * SIGN( RCL0 - 5E3 ) ) / 200 =

L'idée était d'utiliser la fonction SIGNE qui vaut -1, 0 ou +1 en fonction de la polarité de son argument. Cette fonction est une spécificité du Ti-62. On ne la retrouve pas sur toute les Ti de cette époque !

Si je la programme directement, ma formule ne donne pas un code aussi court que celui de Tyann (mais presque):

Code : Tout sélectionner

[LRN]                         St
[STO][ 0 ]       STO 0        00      [ ( ]            (            20
[ * ]            *            01      [RCL][ 0 ]       RCL 0        21
[ ( ]            (            02      [ - ]            -            22  
[ 2 ][ 1 ][ 5 ]  215          05      [ 5 ][EE ][ 3 ]  5000         25    
[ - ]            -            06      [ ) ]            )            26   
[ 2 ]            2            07      [INV][|x|]       SGN          27
[ * ]            *            08      [ ) ]            )            28
[ ( ]            (            09      [ / ]            /            29   
[RCL][ 0 ]       RCL 0        10      [ 2 ][ 0 ][ 0 ]  200          32 
[ - ]            -            11      [ = ]            =            33
[ 3 ][EE ][ 3 ]  3000         14      [INV][EE ]       IEE          34  
[ ) ]            )            15      [R/S]            R/S          35
[INV][|x|]       SGN          16      [RST]            RST          36
[ - ]            -            17      [LRN]  
[ 3 ]            3            18
[ * ]            *            19
Pour faire mieux, il faut un peu tricher, il est possible de raccourcir les code de Tyann et les miens en utilisant des registres pour y mémoriser les paramètres.

Par exemple, en utilisant les registres R1, R2 et R3 pour mémoriser les paramètres, il est possible de réduire à 27 pas de programme.

Code : Tout sélectionner

3000.010 STO1      limite inférieure . incrément inférieur
5000.015 STO2      limite supérieure . incrément supérieur
   1.075 STO3      facteur non corrigé          
STO0 * ( 1.075 - FRAC(RCL1)*SGN(RCL0- INTG(RCL1)) - FRAC(RCL2)*SGN(RCL0-INTG(RCL1))) =

[LRN]
[STO][ 0 ]   00   [RCL][ 3 ]   01   [ - ]        02   [RCL][ 1 ]   03   [INV][Intg]  04
[ * ]        05   [ ( ]        06   [RCL][ 0 ]   07   [ - ]        08   [RCL][ 1 ]   09
[Intg]       10   [ ) ]        11   [INV][|x|]   12   [ - ]        13   [RCL][ 2 ]   14
[INV][Intg]  15   [ * ]        16   [ ( ]        17   [RCL][ 0 ]   18   [ - ]        19
[RCL][ 2 ]   20   [Intg]       21   [ ) ]        22   [INV][|x|]   23   [ = ]        24
[ * ]        25   [RCL][ 0 ]   26   [ = ]        27 
[LRN]
SHARP PC-1211 PC-1360 EL-5150 PC-E500 | Commodore C=128D | Texas Instruments Ti-57LCD Ti-74BASICalc Ti-92II Ti-58c Ti-95PROCalc Ti-30XPROMathPrint | Hewlett-Packard HP-28S HP-41C HP-15C HP-Prime HP-71B | CASIO fx-602p | NUMWORKS | Graphoplex Rietz Neperlog | PockEmul | Sommaire des M.P.O. | Ma...dov'il sapone.
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

Très belle performance :D :!: :idea:
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

Mais il me semble que si l'on utilise les registres R1, R2, et R3 et en combinant à la fois les propositions de Schraf, Tyann et Badaze, on obtiendrait également quelque chose d'intéressant :idea:
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Andromede
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 157
Enregistré le : 09 oct. 2021 15:15

Re: TI-62 Galaxy

Message par Andromede »

Une version en 34 pas (encore un pas de moins par rapport au code de Tyann) en combinant les propositions de Schraff, Tyann et Badaze sans les registres R1, R2 et R3. L'utilisateur du programme ne saisit que son salaire :D

Code : Tout sélectionner

00	x<-->t
01	3
02	EE
03	3
04	x>=t
05	GTO 1
06	5
07	EE
08	3
09	x>=t
10	GTO 2
11	SBR 3
12	0
13	5
14	GTO 4
15	LBL 1
16	SBR 3
17	1
18	GTO 4
19 	LBL 2
20	SBR 3
21	0
22	8
23	GTO 4
24	LBL 3
25	x<-->t
26	x
27	1
28	.
29	RTN
30	LBL 4
31	=
32	INV EE
33	R/S
Casio FX-850P, FX-880P, FX-7000G, FX-7000GA, FX-3900P
Canon X-07
Sharp E500, EL-9000, PC 1500
Texas Instruments TI-57 II, TI-62 Galaxy, TI-66 Programmable, TI-74 Basicalc, TI-74S, TI-95 Procalc
" Les machines un jour pourront résoudre tous les problèmes, mais jamais aucune d'entre elles ne pourra en poser un !" Albert Einstein
Avatar du membre
tyann
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 845
Enregistré le : 06 oct. 2012 14:37

Re: TI-62 Galaxy

Message par tyann »

Bonjour
Il faut mettre les pas : lbl 4 = inv EE R/S juste avant le lbl 3 et ainsi économiser le dernier gto 4.
Ti(s) 60, 62 Galaxy, 66, 67 Galaxy, 68, 74 Basical 80, 81, 82, 83+, 83 CE, 84+SE, 85, 86, 89, 89 titanium, 92, 95 Procalc, v200, nSpire cx
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
Répondre

Retourner vers « Tous les Pockets »