MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

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

Avatar du membre
Over_score
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 166
Enregistré le : 26 mars 2019 14:55
Localisation : Pas loin de Smartville

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Over_score »

Over_score a écrit : 20 nov. 2022 11:01
zpalm a écrit : 19 nov. 2022 22:31
Over_score a écrit : 17 nov. 2022 08:48 Je suis vraiment très content de voir la brigade 43 en action ! Mais, ... suite samedi.
On attend la suite :wink:
La compagnie 43 a eu beaucoup de mal à avancer ces derniers jours à cause de conditions météorologiques très défavorables. Mais nous faisons tout ce qui est en notre pouvoir pour revenir sur le front Herr Artilleriehauptmann.
Voir la suite là : http://www.silicium.org/forum/viewtopic ... 06#p574006
FLISZT
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 655
Enregistré le : 09 mars 2022 19:14

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par FLISZT »

<<−− Message de l'escadron 50G −−>>

Tous ces derniers jours, nous ne progressions plus que sur des points de détail. Certes, quelques hommes avaient eu droit à deux jours de permission bien mérités, mais surtout, nous manquions d'appui mathématique.
Pour vous donner une idée du niveau, une jeune recrue croyait dur comme fer que Fibonacci était un opéra italien !
Nous avons fini par lui faire entendre raison et le persuader qu'il confondait avec Cappuccino !!

Dernièrement, on nous envoya un jeune diplômé en stratégie. Celui-ci nous présenta la stratégie dite "dynamique"…… on ne comprenait rien !
Par-delà cette belle théorie, nous voulûmes juger sur pièce. Cette "brillante" stratégie se révéla près de 12 fois plus lente que la bonne vieille méthode issue du manuel, après que nous l'ayons "délocalisée" puis totalement "stackerenisée".
Nous n'avons donc pas été fâchés quand nous avons appris que notre jeune "Tintin" devait partir séance tenante pour une autre mission, loin, très loin, au San Theodoros rejoindre le Professeur Marge, éminent spécialiste de la psionologie.

Une bonne partie de nos espoirs reposaient alors sur deux de nos hommes, des opérateurs-radio. Ils devaient prendre des cours accélérés en fibonaccilogie via la télégraphie, selon le procédé de Monsieur Morse, sur la fréquence de 14.2550 mégacycles. Quel progrès !
Est arrivé le moment de la restitution de ce qu'ils avaient appris (et compris… ) : 《 • • • — — — • • • — — — • • • — — — • • • 》
… on ne comprenait rien ! Une fois de plus !

Nous avons donc reconsidéré la situation, partant du fait que notre stratégie était fonctionnelle mais bien trop lente pour se risquer à engager de grandes unités. Un jeune lieutenant eut alors une idée peut-être singulière mais qui nous a permis de faire un bond de géant !
Avec une petite adaptation de ce que nous avions déjà, 999 999 999 999 999 fut décomposé en 38,61 secondes.
Un autre test fut lancé avec 999 999 999 999 999 999 999 : 110,898 secondes (1 min et 50,898 s).

Notre limite est FIB(9999), soit un nombre de 2090 chiffres. Le calcul de FIB(9999) prend à lui seul 108,405 secondes, autant dire que cette nouvelle stratégie dépasse très largement nos besoins et un temps opérationnel raisonnable. Elle nous fait perdre qq dixièmes de seconde face aux petites unités (≤ 100). En revanche, pour 120 unités, on passe de 57,41 secondes à 4,42 s ! Plus la valeur est grande, plus le progrès est net !

Par contre, le nombre d'octets devient élevé : il passe de 294,5 (249,5 + 45) à 619 (574 + 45).
Ceci peut s'expliquer par le fait que l'on s'est surtout concentré sur la vitesse. Des améliorations (ou des compromis) restent possibles…
Nous avons encore une stratégie totalement différente à tester, mais nous restons prudents quant à son intérêt.

Je précise que nous utilisons du matériel US dévoilé en 1906 et sans aucunes "options". D'ailleurs, l'une de nos deux machines (version "Azur" ) s'est soudainement bloquée en mode édition. Débranchement du câble, puis d'une pile… et c'est reparti sans pertes !

Concernant l'actualité du matériel suisse de type "Whisky Papa 34", vous pourrez en savoir davantage en vous branchant sur ce "repeater" H24 :
https://www.youtube.com/watch?v=VltIC4SnOlQ
⋅⋅⋅
Edit : erreur sur l'année de sortie de notre matériel ! :wink:
Bruno
Sanyo CZ-0124 ? TI-57 ? HP-15C ? Canon X-07 + XP-140 Monitor Card ? HP-41CX ? HP-28S ? HP-50G ? HP-50G
Zebulon
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 569
Enregistré le : 28 juin 2022 10:21

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Zebulon »

En 220 pas la Casio Graph 85 vient rejoindre le reste des troupes:
Zecken1.png
Zecken1.png (90.83 Kio) Vu 3805 fois
Zecken2.png
Zecken2.png (93.74 Kio) Vu 3805 fois
...

Je pensais que l'émulateur accélérait les calculs donc j'ai recopié le programme dans ma Graph 100+ et en fait l'exécution est super rapide même pour des très grands nombres, quasi aussi rapide que le programme en Python sur la Numworks. 8O
FLISZT
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 655
Enregistré le : 09 mars 2022 19:14

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par FLISZT »

Bruno
Sanyo CZ-0124 ? TI-57 ? HP-15C ? Canon X-07 + XP-140 Monitor Card ? HP-41CX ? HP-28S ? HP-50G ? HP-50G
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: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par gege »

Bonjour,
Alors quand voit-on le code (des programmes) ????
G.E.
Avatar du membre
zpalm
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2917
Enregistré le : 03 mai 2008 15:33
Localisation : Grenoble

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par zpalm »

gege a écrit : 30 nov. 2022 23:20 Alors quand voit-on le code (des programmes) ????
Nous attendons l’ordre …
C.Ret a écrit : 15 nov. 2022 18:51 Surtout tout faire pour préserver ces codes au secret et ne pas les publier ici avant nouvel ordre. L'enemi est partout et il a des oreilles et des yeux. Laissons les espions et autres observateurs se casser encore un peu les dents et les chercheurs se creuser la nénette un peu plus profondément.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3400
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par C.Ret »

Ordre de mobilisation générale !

Image


Etant donné nos positions catastrophiques, l'Etat-Major a décidé de passer à l'attaque et de ne plus attendre d'avantage dans nos retranchements respectifs.
Les Flandres et la Belgique sont déjà perdus. Ordre est donné d'organiser les fronts et d'arrêter l'invasion des nombres entiers !
Les Flandres et la Belgique sont déjà perdus. Ordre est donné d'organiser les fronts et d'arrêter l'invasion des nombres entiers !
MPO114 - Situation du front au 1er décembre 2022.gif (134.95 Kio) Vu 3664 fois

Ainsi, ordre est donné à tous les corps d'armée de se préparer à la grande Offensive qui aura lieu dès le début de la prochaine semaine.
Afin de permettre d'équiper tous les contingents avec l'armement idéal et dans les plus brefs délais, il est demandé à chaque Chef d'Armée de transmettre au plus vite et publiquement les codes opérationnels pour la décomposition des entiers selon le procéder Zeckendorf.


Tous les appareillages sont concernés, avec ou sans mitrailleuse rotative, avec ou sans rayon infra-rouge, multilignes ou affichage simple. Il nous faut rapidement et efficacement équiper le moindre de nos instruments avec les codes et algorithmes adaptés. D'ailleurs, une rumeur circule à l'Etat-Major Inter-Armées que des Instruments provenant du Texas seraient très rapidement mis en batteries.
En particulier un modèle de très gros calibre 92 II qui permettrait la décomposition vigoureuse de nombre entier de tailles gigantesques.

Image

Si les préparatifs se déroulement bien, l'Etat major espère pouvoir synchroniser la manœuvre d'attaque décisive, au mieux avant la fin de la semaine prochaine, au pire avant les Fêtes de Fin d'année.

Image

L'Etat Major a dore et déjà donné les instructions régimentaires pour la mise en place du Rangaufstiegsprogramm pour les sous-lieutenants, lieutenants et officiers méritants qui apporteront des progress significatifs pour l'optimisation et l'efficacité de nos algorithmes de batailles.

Des bonus importants seront accordés aux bons soldats et, si tout va bien, du pain d'épice sera distribué aux troupes pour le Nikolaus.
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.
Zebulon
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 569
Enregistré le : 28 juin 2022 10:21

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Zebulon »

Code de la Numworks :

Code : Tout sélectionner

from math import *
def split(x):
  a,n,p,q,f=[],0,0,1,0
  while f<=x:
    a.append(f)
    f=p+q
    q=p
    p=f
    n+=1
  print(a)
  while n>1:
    p=a.pop()
    n-=1
    if p<=x:
      x-=p
      print("1","F"+str(n),p)
    else:
      print("0")
  return
Zebulon
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 569
Enregistré le : 28 juin 2022 10:21

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Zebulon »

Code de la Graph 100+ (correspond au rendu dans l'émulateur Graph 85 SD):
Zecken_code_graph100+.png
Zecken_code_graph100+.png (22.99 Kio) Vu 3641 fois
Modifié en dernier par Zebulon le 01 déc. 2022 23:12, modifié 1 fois.
Avatar du membre
zpalm
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 2917
Enregistré le : 03 mai 2008 15:33
Localisation : Grenoble

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par zpalm »

Brigade 43 au rapport, à 38 pas de la ligne de front:

Code : Tout sélectionner

 // Début du programme
01 LBL "MPO114"
02 "=" RCL X 0#2 STOS 00 <>ztxt SKIP 02  // Initialisation des registres et préparation pour la suite

// Boucle principale
08 "+" STO+ 02 " F" STO+ 01 <>ZTZT       // Préfixes pour les nouvelles valeurs           
13 5 √ RCLx Y LG #Φ LG / ROUNDI          // Calcul de l’indice n du nombre de Fibonacci le plus proche
21 ENTER FIB X>Z? DEC Y <>YYZT STO+ 01   // Si Fn > N alors on prend l’indice n précédent
27 FIB STO+ 02 STO- Z                    // Traitement de Fn
30 RCL T SB->Z STO 00                    // Mise à jour de la représentation binaire
33 RCL T x#0? BACK 27                    // Boucle si on n’a pas terminé la décomposition de N

// Fin du programme
36 RCLS 00                               // Affichage des résultats
37 SR 01                                 // Aligne la représentation binaire
38 END
Brigade 25 en soutien à 41 pas:

Code : Tout sélectionner

 // Début du programme
01 STO 0                                                                // Mémorisation du nombre de départ N
// Boucle principale
02 5 SQRT STO 2 * LOG RCL 2 1 + 2 / STO 3 LOG / 1 + INT STO 1           // Calcul de l’indice n du nombre de Fibonacci le plus proche
19 RCL 3 RCL 1 y^x RCL 2 / . 5 + INT RCL 0 X>=Y? GTO 34 1 STO- 1 GTO 19 // Si Fn > N alors on prend l’indice n précédent
34 X<>Y STO- 0 R/S                                                      // Affichage nombre de Fibonnaci
37 RCL 1 R/S                                                            // Affichage  indice
39 RCL 0 X#0? GTO 02                                                    // Boucle si on n’a pas terminé la décomposition de N
Et enfin la brigade 1300S et sa mitrailleuse rotative crépitante intégrée en appui décalé à 90 oktetten dont le rapport est arrivé par pigeon voyageur :

Image

La brigade 34S positionnée au plus près du front n’a pu encore faire parvenir son rapport, nous l’espérons dans les 24h.
Zebulon
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 569
Enregistré le : 28 juin 2022 10:21

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Zebulon »

Ah ah je me disais que j'avais dû louper quelque chose. :D
L'arrondi de φ^n/√5, où φ est le nombre d'or, est égal au n-ième nombre de Fibonacci.
Avatar du membre
Marge
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 6167
Enregistré le : 01 oct. 2008 14:39
Localisation : En bas, tout au fond à gauche.

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Marge »

29ème régiment d'artillerie, au rapport !

L'entrée de l'obus dans la bouche à feu est indispensable avant d'actionner le tir au moyen de la commande GSB 9.

Code : Tout sélectionner

01 LBL 9     06 STO 1     11 RCL 1     16 STO 1      21 LBL 7      26 PAUSE
02 STO 3     07 STO 2     12 +         17 Rd         22 RCL 0      27 -
03 2         08 LBL 8     13 X>Y       18 STO 2      23 PAUSE      28 X=0
04 STO 0     09 RCL 3     14 GTO 7     19 ISZ        24 RCL 3      29 RTN
05 1         10 RCL 2     15 RCL 2     20 GTO 8      25 RCL 2      30 GTO 9
Les effectifs nécessaires se composent de quatre registres et de trente pas, soit 58 octets (l'âge du commandant !).
3 hommes, 3 demis, un 3a... Magnéto, Serge !

Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67
__: A L I E N .

« Boris », c'était juste Maurice enrhumé.
Zebulon
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 569
Enregistré le : 28 juin 2022 10:21

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Zebulon »

Ouh la la je suis comme une poule qui découvre une fourchette. :D

Je suis admiratif de ces calculatrices HP programmables. Marge j'ai testé ton programme sur un émulateur pour comprendre un peu et le voir fonctionner et je l'ai adapté à ma HP 12c (version Platinum aucun intérêt historique) et ça marche, je suis tout fou. :ugeek:

Code : Tout sélectionner

001	STO 3
002	2
003	STO 0
004	1
005	STO 1
006	STO 2
007	RCL 3
008	RCL 2
009	RCL 1
010	+
011	x><y
012	x<=y?
013	GTO 022
014	x><y
015	RCL 2
016	STO 1
017	ROLL
018	STO 2
019	1
020	STO+0
021	GTO 007
022	RCL 0
023	PSE
024	RCL 3
025	RCL 2
026	PSE
027	-
028	x=0?
029	R/S
030	GTO 001
Avatar du membre
Marge
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 6167
Enregistré le : 01 oct. 2008 14:39
Localisation : En bas, tout au fond à gauche.

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par Marge »

:D Hé hé, prends garde au virus de la programmation ! Mais il n’est pas mortel, bien au contraire. :wink:
3 hommes, 3 demis, un 3a... Magnéto, Serge !

Quelques-uns de mes petits programmes pour machines Hewlett-Packard :
15C : Knight's Tour ;
29C : (k-)Permutations, Combinations, Linear Regression and Pseudo-random number ;
34C : Hanoi Towers - Automatic & Manual resolutions ;
67
__: A L I E N .

« Boris », c'était juste Maurice enrhumé.
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3400
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: MPO n°114: Eine Zeckendorf-Darstellung ganzer Zahlen

Message par C.Ret »

Zebulon a écrit : 24 nov. 2022 22:54En 220 pas la Casio Graph 85 vient rejoindre le reste des troupes:
Image
L'Etat major a été très agréablement surpris de voir comment cet équipement inattendu sur la ligne de front s'avère être très bien exploité pour les combats. En particulier, l'idée d'utiliser l'écran d'affichage des matrices a été le sujet de toutes les congratulations et la source d'élogieux compliments partagés par les gradés de plus haut rang ainsi que par son Excellence Impériale en personne.
100 = F11+F6+F4 = 89+8+3 = 10000101000
100 = F11+F6+F4 = 89+8+3 = 10000101000
MPO114 - Rapport Pigeon CASIO Graph.png (1.29 Kio) Vu 3552 fois
Le format et la lisibilité de ce rapport de décomposition a été particulièrement remarqué. Le rapport ci-dessus à été transmis par le FeldMaréchal TaubeAasfressende depuis la porte sud de la Citadelle où l'entier 100 a été décomposé au cours d'une manœuvre par les élèves du Prytanée der Militärkartographie und taktischen Zerlegung

Depuis qu'il a vu le code, l'Etat Major est rassuré et bien étonné par les performances de cet équipement.

Alors que je présentais les résultats de Zebulon à l'Etat Major, il n'y a eut que le Grieg's Baron Von Nervigstück am Petrus qui ce soit énervé et à commencer à gindre et vociférer vigoureusement. D'après lui, le code gaspille de fort précieux et fort nombreux oketten par la répétition inutile d'instructions identiques (je n'ai pas bien compris, il parlait de Q ?) et pire encore, son exécution utiliserai une liste inutile. Je n'ai pas très bien compris tous les tenants et aboutissants de ses nombreux reproches. Mais, pour le Baron, cela était très grave, surtout en tant de guerre où il faut éviter tout gaspillage et optimiser les ressources.

Je transmets ci-dessous une traduction du code qu'il a proposé pour équiper les troupes du front de l'ouest munies des dispositifs CASIO Graph:
MPO114 - Proposition CASIO Graph 85.png
MPO114 - Proposition CASIO Graph 85.png (48.08 Kio) Vu 3543 fois
Bien que basé sur le même algorithme que les codes pour la Ein and Vierzig, il présente un petit perfectionnement qui évite les retombées catastrophiques et mortelles en cas de dépassement de capacité.

Les calculatrices actuellement engagées aux lignes de front vont donc être rétrofitées et modifiées en conséquence afin de ne plus être sensibles au dépassement de capacité que peuvent occasionner les grands entiers. Cela va créer un petit délais dans la publication des codes des unités équipées par cet algorithme.

L'Etat Major a reconnu que ce code est plus court et accepte donc la requête du baron. Il m'a également demandé de bien vouloir transmettre à la Compagnie Zebulon, l'ordre de se mettre à jour et de se préparer à la revue qui se fera en bonne et due forme avant de reprendre consciencieusement les combats!

Pour sa participation active au développement de nos efforts de guerre, Zebulon est dore et déjà inscrit au Rangaufstiegs-Ehrentafel.
Modifié en dernier par C.Ret le 08 avr. 2023 11:18, modifié 1 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.
Répondre

Retourner vers « Tous les Pockets »