12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

La révolution des ordis de poche et autres calculettes est en marche, ils font l'évènement chaque année

Modérateur : Politburo

Répondre
Avatar du membre
ledudu
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 5631
Enregistré le : 26 mars 2009 13:07
Localisation : Ile de France
Contact :

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par ledudu »

Très bien ce calculators3000 !
mk99.png
mk99.png (191.76 Kio) Vu 3680 fois
Le première chose un peu troublante c'est que je ne comprends pas pourquoi nous avons écrit sur la nappe :
1 10^x 7 STO 9
au lieu
7 10^x STO 9

Sur l'émulateur c'est la seconde forme, intuitive, qui fonctionne mais il me semble bien que ça marchait sur la machine.
Tu peux vérifier gégé ?

Si on a bien programmé la seconde forme, ça décale tout d'un pas vers le haut...
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3404
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par C.Ret »

c'est très bien cet émulateur(*).

Cela m'a permis plusieurs choses:
  • Comme Ledudu j'ai trouvé une forme plus courte pour méoriser 1.E+07 c'est de cacluler 7 10^X x→П7 (gagne un pas)
  • De vérifier que l'astuce d'ajouter puis retirer 1.E+07 fonctionne très bien car il n'y apas d'arrondi
  • Que les instructions de tests ne fonctionnent pas comme sur les HP ou TI. Je croyais que c'était Ledudu qui avait tout fait faux. Mais non ! C'est moi qui est pas lu la notice. Le test indiqué sur le clavier correspond à la condition qui évite le saut:
    x=0 signifie continuer plus loin si le registre X est null, sinon effectuer le saut à l'adresse indiquée.
  • l'adresse des saut est celle de la position en mémoire de l'instruction cible.
    Mais attention, l'affichage est trompeur, les instructions sont numérotées à partir de l'adresse 00, mais l'affichage indique à l'extrême droite l'adresse de la prochaine instruction c'est à dire celle que l'on a pas encore tapée ou que l'on ne voit pas encore à l'affichage.
    C'est l'inverse des Ti ou lors de la saisie on ne voit que des codes 00, les codes déjà tapés disparaissent immédiatement. Sur une Electronika, c'est l'inverse, on voit les trois derniers codes tapés et le compteur à droite donne l'adresse de l'instruction suivante (celle que l'on ne voit pas).
    Il n'y aura eut qu' HP pour afficher correctement le pas et l'instruction sur le même affichage ! Seul truc bien sur une HP ?
Une fois que l'on a compris ces petits détails, on se rend compte que le code de Ledudu est erroné, non pas à cause du sens des tests, mais à cause du décalage des adresses.

Sur l'émulateur le code de Ledudu qui fonctionne bien est:

Code : Tout sélectionner

00:40        01   П0
01:07 40     02   7
02:15 07 40  03   10^x
03:47 15 07  04▼  П7
04:60 47 15  05   ИП0
05:02 60 47  06   2   
06:10 02 60  07   +
07:40 10 02  08   П0
08:01 40 10  09   1
09:41 01 40  10▼  П1
10:61 41 01  11   ИП1
11:02 61 41  12   2
12:10 02 61  13   +
13:41 10 02  14   П1
14:60 41 10  15   П0
15:61 60 41  16   П1
16:13 61 60  17   ÷
17:0E 13 61  18   B↑
18:67 0E 13  19   ИП7
19:10 67 0E  20   +
20:67 10 67  21   ИП7
21:11 67 10  22   -
22:11 11 67  23   -
23:57 11 11  24   x≠0
24:04 57 11  25     04
25:60 04 57  26   ИП0
26:61 60 04  27   ИП1
27:02 61 60  28   2
28:10 02 61  29   +
29:22 10 02  30   x²
30:11 22 10  31   -
31:5C 11 22  32   x<0
32:10 5C 11  33     10
33:60 10 5C  34   ИП0
34:50 60 10  35   C/П
35:51 50 60  36   БП
36:04 51 50  37     04
Attention, je représente les codes tels qu'ils apparaissent dans les affichages. N'oublions pas qu'il y a un décalage d'une unité. La première instruction est à l'adresse 00: 40 П0


Et mon code doit aussi être corrigé, il est plus rapide mais un peu plus long:

Code : Tout sélectionner

00:40        01▼          x→П 0                                 
01:60 40     02 "isPrm"   П→x 0    ## Display Prime
02:50 60 40  03▼          C/П      ##                
03:60 50 60  04 "nxt N"   П→x 0    #  Inc N+=2
04:02 60 50  05            2                  
05:10 02 60  06            +                  
06:40 10 02  07           x→П 0
07:01 40 10  08            1       #  Init D=1                    
08:41 01 40  09▼          x→П 1                                 
09:60 41 01  10 "nxt D"   П→x 0    #  Inc D+=2
10:61 60 41  11           П→x 1               
11:02 61 60  12            2                  
12:10 02 61  13            +                    
13:41 10 02  14           x→П 1                                   
14:22 41 10  15         F  x²                 
15:11 22 41  16            -                  
16:57 11 22  17         F X≠0      #  N=D² : N is a square  
17:03 57 11  18              03    #      -> next N         
18:59 03 57  19         F x≥0      #  N<D² : N is prime      
19:01 59 03  20              01    #      -> disp N
20:60 01 59  21 "Test"    П→x 0           
21:61 60 01  22           П→x 1                      
22:13 61 60  23            ÷
23:0E 13 61  24           B↑
24:0E OE 13  25           B↑
25:07 0E 13  26            7
26:15 07 40  27           10^x     #  1.E+07 
27:10 67 0E  28            +
28:0  10 67  29           Bx       #  Last X
29:11 0  10  30            -
30:11 11 0   31            -       #  Frac N/D  
31:57 11 11  32           x≠0      # Frc=0 : D divise N
32:03 57 11  33              03    #      -> next N
33:51 03 57  34           БП       #  D not a divisor      
34:09 51 03  35              09    #      -> next D 
Reste à charge de gégé de pédaler ou courir dans sa cage pour faire tourner la génératrice électrique et vérifier tout cela sur la vraie machine.
Je sais pas, ça consomme beaucoup une pet'te bécane de cette taille ? Et là, c'est pas le maire de Torcy qui offre le courant !!


Au fait, il est passé vous saluer pendant le pokéticaire ??



(*) EDIT 1: Sauf que la machine représentée est très moche. Je trouve celle de gégé bien plus classe avec ses colories grises et non beige et surtout un clavier bien mieux série-graphié.

EDIT 2: Nouvelle version de mon code, plus court, plus rapide, plus efficace obtenu en ressemblant plusieurs contrôles en un seul test...
Mais surtout mieux présenté, ce qui permettra à gégé de vérifier qu'il marche sur une vraie MK-56. Je ne suis pas sûr que la fonction Bx (LASTX) fonctionne sur la vraie et ne soit possible que sur l'émulateur.

Code : Tout sélectionner

00: 40   П0                        09:►60   П0    ## Next D                       22: 07   7
                                   10: 61   П1                                    23: 15   10^x     #  1.E+07 
01:►60   ИП0   ## Display Prime N  11: 02   2                                     24: 10   +
02: 50   C/П                       12: 10   +        # Incr. D ← D+2              25: 0    Bx       #  Last X
                                   13: 41   П1                                    26: 11   -
03:►60   ИП0   ## Next N           14: 13   ÷     ## Division Test                27: 11   -        #  Frac(N/D-D)
04: 02   2                         15: 61   ИП1                                   28: 5E F x=0      # Frc<>0: d not a divisor
05: 10   +        # Incr. N ← N+2  16: 11   -        # Q=N/D-D                    29: 09      09    #      -> next D
06: 40   П0                        17: 0E   B↑                                    30: 51   БП       # Frc=0 : D divise N 
07: 01   1        # Init. D ← 1    18: 57 F X≠0      # Q=0 : N=D² : N is a square 31: 01      03    #      -> next N 
08: 41   П1                        19: 03      03    #           -> next N
                                   20: 59 F x≥0      # Q<0 : N<D² : N is prime
                                   21: 09      01    #      -> Display N
Modifié en dernier par C.Ret le 27 oct. 2022 06:32, modifié 5 fois.
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
rogeroge
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 4227
Enregistré le : 14 mai 2010 21:41
Localisation : Entre Nancy et Bercy : à Torcy

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par rogeroge »

C.Ret a écrit : 24 oct. 2022 23:36 ............
Et là, c'est pas le maire de Torcy qui offre le courant !!
Au fait, il est passé vous saluer pendant le pokéticaire ??
Une programmation qui n'a pas fonctionné : :lol:
Le maire n'est pas passé... :wink:
Il faut être fou pour venir sur ce site mais encore plus fou pour ne pas y revenir !
Avatar du membre
gege
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7141
Enregistré le : 31 janv. 2008 14:24
Localisation : Banlieue Paârisienne
Contact :

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par gege »

Bonjour,
En fait on a bien utilisé la touche "exposant de 10" : BΠ (code OC) et non l'élévation de 10 à la puissance 10^x, c'est bon pour le nombre de pas.

Comme le signale C.Ret, les pas sont décalés de 1, en remplaçant 06 par 05 et 12 par 11 dans les adresses de saut tout fonctionne parfaitement sur l'émulateur sous Android "MK 61/54" (merci le RER qui se traîne).
Je tape ça sur la vraie machine demain, mais ça semble résolu. Je chronomètrerai.

Reste à trouver quelles sont les fonctions obtenues par la touche shiftée "K", elles ne sont pas marquées sur la face avant de la MK56...
Il y a sûrement la partie fractionnaire, ça allègerait notablement le programme.
Ensuite on pourra optimiser, peut-être si on utilise la pile (où est le roll down / up ?), ou qu'on trouve la fonction STO+ ?
Last x est Bx. Tiens je vais taper ce truc sur HP12C aussi.
Quelqu'un a demandé si la MK était plus lente que la TI62 Galaxy, ça se tente !

A suivre...
G.E.
Avatar du membre
Danny
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1248
Enregistré le : 28 déc. 2013 16:34

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par Danny »

C.Ret a écrit : 24 oct. 2022 23:36 Mais attention, l'affichage est trompeur, les instructions sont numérotées à partir de l'adresse 00, mais l'affichage indique à l'extrême droite l'adresse de la prochaine instruction c'est à dire celle que l'on a pas encore tapée ou que l'on ne voit pas encore à l'affichage.
C'est l'inverse des Ti ou lors de la saisie on ne voit que des codes 00, les codes déjà tapés disparaissent immédiatement. Sur une Electronika, c'est l'inverse, on voit les trois derniers codes tapés et le compteur à droite donne l'adresse de l'instruction suivante (celle que l'on ne voit pas).
Il n'y aura eut qu' HP pour afficher correctement le pas et l'instruction sur le même affichage ! Seul truc bien sur une HP ?
Tu n'as donc pas lu mon topo sur la MK-61 :P : http://www.silicium.org/forum/viewtopic ... 96#p559496
? Apple, Atari, Canon, Casio, ????????????, HP, Psion, Sharp, Tandy... même TI.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3404
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par C.Ret »

Danny a écrit : 25 oct. 2022 23:50
C.Ret a écrit : 24 oct. 2022 23:36 Mais attention, l'affichage est trompeur, les instructions sont numérotées à partir de l'adresse 00, mais l'affichage indique à l'extrême droite l'adresse de la prochaine instruction c'est à dire celle que l'on a pas encore tapée ou que l'on ne voit pas encore à l'affichage.
C'est l'inverse des Ti ou lors de la saisie on ne voit que des codes 00, les codes déjà tapés disparaissent immédiatement. Sur une Electronika, c'est l'inverse, on voit les trois derniers codes tapés et le compteur à droite donne l'adresse de l'instruction suivante (celle que l'on ne voit pas).
Il n'y aura eut qu' HP pour afficher correctement le pas et l'instruction sur le même affichage ! Seul truc bien sur une HP ?
Tu n'as donc pas lu mon topo sur la MK-61 :P : http://www.silicium.org/forum/viewtopic ... 96#p559496
Ben non, j'aivais pas lu! J'aurais gagné du temps.

C'est fait, et effectivement je confirme tes observations. Ledudu et gégé auraient eux aussi pu prendre le temps de lire ton topo et les documents indiqués; ils auraient gagné du temps et surement réussit à faire quelque chose de cette MK 56.

Il faut donc les compter parmi les gens qui ont un Electronika mais ne s'en servent pas (ou pas suffisamment). Je comprends, ils ont déjà bien trop à faire avec tous les gadgets japonais ou les monstres pesant qui envahissent leur logement respectif.

En tout cas, nous sommes en plein dans le sujet du pokéticaire, les Electronika MK ont bel et bien un language de programmation spécifique.



Bon, alors maintenant que l'on a compris comment programmer celle-ci, y-a-t-il d'autre baku ou Chupucabra à dompter ?
Modifié en dernier par C.Ret le 26 oct. 2022 18:12, modifié 2 fois.
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
Danny
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1248
Enregistré le : 28 déc. 2013 16:34

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par Danny »

Oui, ce que je trouve sympa est d’avoir des machines avec des logiques différentes et des particularités à découvrir, c’est ce qui évite la routine :)

Et c’est vrai que quand on a plein de matos accumulé on manque de temps pour tout maîtriser.

Dans le genre, il y a la Canon F-73P qui est pas mal avec sa programmation à l’aveugle et ses sauts limités :o
? Apple, Atari, Canon, Casio, ????????????, HP, Psion, Sharp, Tandy... même TI.
Avatar du membre
ledudu
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 5631
Enregistré le : 26 mars 2009 13:07
Localisation : Ile de France
Contact :

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par ledudu »

Salut
gege a écrit : 25 oct. 2022 23:23 Comme le signale C.Ret, les pas sont décalés de 1, en remplaçant 06 par 05 et 12 par 11 dans les adresses de saut tout fonctionne parfaitement sur l'émulateur sous Android "MK 61/54" (merci le RER qui se traîne).
Ca marche ? Dingue.
Je croyais que les tests fonctionnaient finalement en adressage indirect alors que nous avons fait de l'adressage direct.
Nous avons fait suivre le test avec le numéro de pas pour le branchement alors qu'il attend un numéro de registre contenant ce numéro et qu'il fait même un décrément pour certains registres.
remy
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 2218
Enregistré le : 13 mars 2006 15:39
Localisation : Issy
Contact :

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par remy »

ledudu a écrit : 26 oct. 2022 18:12 Salut
gege a écrit : 25 oct. 2022 23:23 Comme le signale C.Ret, les pas sont décalés de 1, en remplaçant 06 par 05 et 12 par 11 dans les adresses de saut tout fonctionne parfaitement sur l'émulateur sous Android "MK 61/54" (merci le RER qui se traîne).
Ca marche ? Dingue.
Je croyais que les tests fonctionnaient finalement en adressage indirect alors que nous avons fait de l'adressage direct.
Nous avons fait suivre le test avec le numéro de pas pour le branchement alors qu'il attend un numéro de registre contenant ce numéro et qu'il fait même un décrément pour certains registres.
Comme quoi un émulateur ça peut toujours servir :wink:
PockEmul, Emulateur de pocket Sharp, Canon, Casio, HP, TI, NEC, Panasonic, Sanco, Seiko, General, National, ....
sur Windows, Linux, OS X et Android
Available now on the Google Play Store and the Apple Store
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3404
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par C.Ret »

gege a écrit : 25 oct. 2022 23:23Reste à trouver quelles sont les fonctions obtenues par la touche shiftée "K", elles ne sont pas marquées sur la face avant de la MK56...
Ce sont uniquement les fonctions d'adressage indirecte qui concernent autant la sauvegarde et la lecture du contenu des registres К x→П et К П→x ( respectivement STO(i) et RCL(i) ), les quatres tests dont le saut se fera au pas indiqué par le registre directeur, les fonctions К БП (GOTO) et К ПП (GOSUB).
Une exception est l'instruction К HOП qui correspond à "aucune opération" (NOP).

Dans beaucoup d'exemple de programme, ces fonctions sont utilisées car elles sont mergées et n'utilisent qu'un seul pas de programme. Le plus courant sont les sauts inconditionnels ce qui est très pratiques, on tape le programme en utilisant, par exemple, К x=0 a et К БП b sans avoir à ce soucier d'où commenceront les sous-parties a et b. Une fois le programme tapé, il suffit de mettre dans a et b les adresses des pas de programme en question et ça roule! Pas besoin d'avoir fait un plan détaillé à l'avance. Dans le manuel, il est suggéré d'utiliser ces registre pour mémoriser le début de différents calculs. Ainsi les registres a b c et d servent en quelque sorte de labels qui seront appelés par les commandes respectives К БП a, К БП b, К БП c ou К БП b suivie de C/O.

Chacun des quatorze registres peut être utilisé comme registre directeur de l'adressage indirect.

Par exemple, si l'on met 7 dans le registre d par 7 x→M d, alors la séquence 121.11 K x→M d mémorise 121.11 dans le registre 7.
Et l'instruction K x=0 d va au pas 07: si le contenu du registre X est non nul sinon le programme continu au pas suivant.

MAIS les registres n'ont pas le même comportement en fonction de leur indice: pour gagner des pas certains registres seront décrémentés (П0 П1 П2 П3), incrémenté (П4 П5 П6) ou inchangés (П7 П8 П9 a b c d ) à l'issue de chaque utilisation lors des sauts ou des affectations.
Seuls ces derniers registres peuvent être utilisé pour des labels fixe n'évoluant pas au cours de m'éxecution des calculs.

Par exemple si l'on souhaite mémoriser 4 valeurs, on peut initialiser le registre П4 à 5 par 5 x→П 4.

Ainsi la séquence 25.05 К x→П 4, 49.07 К x→П 4, 121.11 К x→П 4 et 189.13 К x→П 4 mémorise les valeurs 25.05, 49.07, 121.11 et 189.13 dans les registres П5, П6, П7 et П8.

Alors que si l'on utilise le registre П0 ainsi, 14 x→П 0, 221027 К x→П 0, 221028 К x→П 0, 221029 К x→П 0 et 221030 К x→П 4 on se retrouve avec
221030 dans a, 221029 dans b, 221028 dans c et 221027 dans d.

En utilisant la séquence 3 x→П a, 0.5 К x→П a, 0.3333333 К x→П a, 0.25 К x→П a et 0.2 К x→П a les valeurs successives sont toutes mémorisées dans П3 qui contient donc finalement 1/5.

gege a écrit : 25 oct. 2022 23:23Il y a sûrement la partie fractionnaire, ça allègerait notablement le programme.
Ces fonctions ne sont pas présentes sur la MK-56. Elles existent dans des modèles ultérieurs (cf. le code de Danny).
gege a écrit : 25 oct. 2022 23:23Ensuite on pourra optimiser, peut-être si on utilise la pile (où est le roll down / up ?),
Les seuls mouvements de pile sont B↑ (ENTER↑), F Ѻ (RDN) et F Bx (LASTX).
Comme sur les HP, il y a quatre niveaux de pile (X,Y,Z,et T) et le registre T est perdu lors de l'entrée d'une nouvelle valeur et il se duplique lors d'opération dyadiques. Il y a un registre X1 (registre L) mais contrairement au HP, dont seuls certaines opérations copient dans L la valeur du registre X, ici le contenu du registre X est systématiquement copié dans X1 à chaque modification de X. Les saisies de l'utilisateur ou B↑ (ENTER) ne modifie pas X1.

gege a écrit : 25 oct. 2022 23:23 ou qu'on trouve la fonction STO+ ?
Il n'y a pas d'équivalent sur la MK-56 des instructions d'arithmétique en mémoire (pas de STO+, STO-, etc...).

gege a écrit : 25 oct. 2022 23:23Quelqu'un a demandé si la MK était plus lente que la TI62 Galaxy, ça se tente !
Nous comptons sur toi pour nous dire si elle va vite et surtotu si le LASTx (F Bx) est programmable. Sur l'émulateur cela marche, mais est-ce réaliste ?? Le code affiché sur l'émulateur pour cette fonction me parait suspect ??
Codes Programme Electronika MK-56 (Emulator).gif
Codes Programme Electronika MK-56 (Emulator).gif (38.58 Kio) Vu 3487 fois

Enfin, ne perds pas ton temps à essayer le code de Ledudu qui est moche, lent et mauvais, je te mets un code décent ci-dessous avec tous les codes affichés pour te faciliter la tache.

Code : Tout sélectionner

00: 40       01   x→П 0        09:►60 41 01 10   П→x 0        22: 07 09 59 23    7
                               10: 61 60 41 11   П→x 1        23: 15 07 09 24 F 10^x
01:►60 40    02   П→x 0        11: 02 61 60 12    2           24: 10 15 07 25    +
02: 50 60 40 03   C/П          12: 10 02 61 13    +           25: 0  10 15 26 F Bx
                               13: 41 10 02 14   x→П 1        26: 11 0  10 27   -
03:►60 50 60 04   П→x 0        14: 13 41 10 15    ÷           27: 11 11 0  28   -
04: 02 60 50 05    2           15: 61 13 41 16   П→x 1        28: 5E 11 11 29 F x=0
05: 10 02 60 06    +           16: 11 61 13 17    -           29: 09 5E 11 30      09
06: 40 10 02 07   x→П 0        17: 0E 11 61 18   B↑           30: 51 09 5E 31   БП
07: 01 40 10 08    1           18: 57 0E 61 19 F X≠0          31: 03 51 09 32      03
08: 41 01 40 09   x→П 1        19: 03 57 0E 20      03
                               20: 59 03 57 21 F x≥0
                               21: 09 59 03 22      01
Pour lancer faire 3 B/O C/П. La MK 56 affiche le premier nombre premier qui est 3 faire C/П pour passer au suivant qui devrai être 5 ...
Je ne sais pas comment tu va faire pour chronométrer ce truc qui s'arrête à chaque nombre premier et attends que tu presses sur C/П ??
Electronika MK-56 (Ledudu prim ver 2).png
Electronika MK-56 (Ledudu prim ver 2).png (44.81 Kio) Vu 3453 fois
Si ça ne marche pas, c'est que le simulateur ne reproduit pas correctement le fonctionnement d'une MK-56 (ou que ta machine est cassée). Tu pourras éventuellement essayer les codes de Ledudu... Mais à tes risques et périls...
Modifié en dernier par C.Ret le 27 oct. 2022 11:34, modifié 3 fois.
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
ledudu
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 5631
Enregistré le : 26 mars 2009 13:07
Localisation : Ile de France
Contact :

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par ledudu »

C.Ret a écrit : 27 oct. 2022 08:52Concernant l'ELECTRONIKA MK 56, je suis inquiet, je n'ai pas trouvé de disfonctionnement outre les programmes mal foutus etmal retranscript.
C.Ret a écrit : 27 oct. 2022 08:52Car tout cela est bien intéressant, et un peu mystérieux, mais ne résout toujours pas le problème du comportement du code (mal fichu c'est vrai) du Ledudu qui n'est bon qu'avec les japonaiseries et se casse les dents sur un petit morceau de technologie soviétique.
C.Ret a écrit : 27 oct. 2022 08:52 Enfin, ne perds pas ton temps à essayer le code de Ledudu qui est moche, lent et mauvais, je te mets un code décent ci-dessous avec tous les codes affichés pour te faciliter la tache.
Quand je pense que ma femme dis que je suis susceptible... :wink:
Mais, bon, elle n'a pas tout-à-fait tort non plus.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3404
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par C.Ret »

Ah! Je m'inquiétais, me voilà rassuré.
Il n'y avait pas de réaction, alors j'ai dû pincer trois fois de suite...

En tout cas merci Ledudu d'organiser ces réunions et désolé de n'avoir pu être parmi vous la semaine dernière.

Vivement le prochain mini-pokéticaire et, je ne promets rien, mais je tacherai de faire en sorte d'être là l'année prochaine...
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
gege
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7141
Enregistré le : 31 janv. 2008 14:24
Localisation : Banlieue Paârisienne
Contact :

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par gege »

Bonjour,
J'ai enfin tapé le code sur la vraie machine et testé la "rapidité" (ce mot a un sens spécial sur MK).
Les programmes sont lancés puis je tape aussi vite que possible C/П pour relancer à chaque affichage d'un nombre premier.
Ceci, jusqu'à l'affichage de 29.

Le programme de Ledudu tourne en 2'05 et celui de C.Ret en... 2'04, donc pas très concluant...
L'adaptation du code de Danny ne fonctionne pas encore, comme on n'a pas la partie fractionnaire je remplace {x} par 7 10^x + Bx -, et pour optimiser un peu je retire les trois premiers pas. Il faut ajuster les destinations des tests et БП, je dois me planter car on n'obtient pas des nombres tous premiers...

A suivre donc !
G.E.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3404
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par C.Ret »

gege a écrit : 29 oct. 2022 10:56Le programme de Ledudu tourne en 2'05 et celui de C.Ret en... 2'04, donc pas très concluant...
Je suis très agréablement surpris ! Je ne m'attendais pas à ce que nos performances soient aussi proches.
En général, je suis 2 à 3 fois moins efficace que Ledudu pour énumérer les nombres premiers en dessous de 100. Quelque soit le matériel utilisé.
En réalité, je n'ai pas chercher la performance, juste à faire un tout petit peu plus court.
En tout cas cela prouve que la commande B↑ (LASTX) est programmable.
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
gege
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 7141
Enregistré le : 31 janv. 2008 14:24
Localisation : Banlieue Paârisienne
Contact :

Re: 12 ème édition des pocketicaires - 21-23 Octobre 2022 ! - thème : les langages de programmation

Message par gege »

Bonjour,
Là j'essaye de trouver les fonctions accessibles par la touche K, pas évident car en mode programme elles entrent les mêmes codes que la MK-61 mais à l'exécution au clavier ça plante systématiquement.
Il va falloir que je recoure à mes super-pouvoirs...
A+
G.E.
Répondre

Retourner vers « Pocketicaires »