Misez p'tit Optimisez n°57 : palindromes
Modérateur : Politburo
- zpalm
- Fonctionne à 9600 bauds
- Messages : 2936
- Enregistré le : 03 mai 2008 15:33
- Localisation : Grenoble
Misez p'tit Optimisez n°57 : palindromes
[Sommaire des MPO]
Voici un nouveau sujet pour exercer vos talents de programmation : inversion - addition.
En partant d’un nombre entier par exemple: 78 on l’écrit à l’envers: 87 et on additionne: 78 + 87 = 165
Puis on recommence :
165 + 561 = 726
726 + 627 = 1353
1353 + 3531 = 4884
Pour la plupart des nombres entiers après quelques itérations on obtient un palindrome : un nombre qui écrit à l’envers est identique à lui-même.
Mais certains nombres résistent et ne semblent pas générer de palindrome: les nombres de Lychrel… trouvez le premier d’entre eux (le plus petit).
On pourra commencer par un programme qui pour un entier donné retourne le palindrome obtenu et le nombre d’itérations nécessaires.
(NB: les nombres de moins de 20 digits qui génèrent un palindrome le font en 261 itérations maximum.)
Voici un nouveau sujet pour exercer vos talents de programmation : inversion - addition.
En partant d’un nombre entier par exemple: 78 on l’écrit à l’envers: 87 et on additionne: 78 + 87 = 165
Puis on recommence :
165 + 561 = 726
726 + 627 = 1353
1353 + 3531 = 4884
Pour la plupart des nombres entiers après quelques itérations on obtient un palindrome : un nombre qui écrit à l’envers est identique à lui-même.
Mais certains nombres résistent et ne semblent pas générer de palindrome: les nombres de Lychrel… trouvez le premier d’entre eux (le plus petit).
On pourra commencer par un programme qui pour un entier donné retourne le palindrome obtenu et le nombre d’itérations nécessaires.
(NB: les nombres de moins de 20 digits qui génèrent un palindrome le font en 261 itérations maximum.)
- C.Ret
- Fonctionne à 9600 bauds
- Messages : 3422
- Enregistré le : 31 mai 2008 23:43
- Localisation : N 49°22 E 6°10
Re: Misez p'tit Optimisez n°57 : palindromes
hA! Ha! Ah!
alioV nu tejus ed .O.P.M neib tnasuma.
eJ m'y stem tuot ed etius.
Pour obtenir l'entier palindrome de l'entier au niveau 1: j'utiliserai
Code qui est plus court, mais équivalent à la version plus logique d'une boucle DO...UNTIL en RPL :
Evidemment cela ne répond pas au MPO. Ce n'est qu'un sous-programme utilisé dans le programme principal de ce M.P.O
Le programme principal compte le nombre d'itérations avant d'arriver à un palindrome et affiche un résumé sous la forme d'une liste { abcde n xyz...zyx } où abcde est l'entier testé, n le nombre d'itérations (d'additions) et xyz..zyx le palindrome final !
J'obtiens alors :
{ 11 0 11 } car 11 est déjà un palindrome.
{ 124 1 545 } car 124+421 = 545
{ 78 4 4884 } comme pour l'exemple donné dans le sujet.
Par contre, j'ai quelque souci avec 89 !
EDIT:
Problème résolu , je trouve { 89 24 # 8813200023188d }
alioV nu tejus ed .O.P.M neib tnasuma.
eJ m'y stem tuot ed etius.
Pour obtenir l'entier palindrome de l'entier au niveau 1: j'utiliserai
Code : Tout sélectionner
« DROP 0
WHILE LAST 10 / LAST MOD ROT 10 * + SWAP IP
REPEAT END »
Code : Tout sélectionner
3: 2: 1:
abcde @ Le niveau 1: contient l'entier inital abcde
« 0 abcde 0 @ Initialise le palindrôme
DO abc ed @ Boucle principale (argumetn 2:chiffres à ajouter 1:palindrome en construction
OVER 10 / IP abc ed ab @ prépare extraction chiffe suivant pour l'itération suivante
ROT 10 MOD ed ab c @ extrait chiffre
ROT 10 * + ab edc @ ajoute ce chiffre à 10x le palindrome en cours de construction
UNTIL
OVER NOT ab edc ab @ Boucle jusqu'à qu'il n'y ai plus de chiffre à ajouter au palindrome
END
0 edcba
SWAP DROP @ Supprime de la pile le 0 résiduel du niveau 2:
» edcba
Le programme principal compte le nombre d'itérations avant d'arriver à un palindrome et affiche un résumé sous la forme d'une liste { abcde n xyz...zyx } où abcde est l'entier testé, n le nombre d'itérations (d'additions) et xyz..zyx le palindrome final !
Code : Tout sélectionner
« 0 @ Initialise le compteur
OVER DUP PAL @ Détermine le premier palindrome
WHILE @ Boucle principale du programme principal
DUP2 =/= @ tant que le nombre testé n'est pas un palindrome
REPEAT
+ @ Calcule la somme
1 ROT + @ Incrémente le compteur d'itération
SWAP DUP PAL @ Détermine le palindrome suivant
END
DROP 3 ->LIST @ Sinon supprime le doublon et met en forme le résultat
»
{ 11 0 11 } car 11 est déjà un palindrome.
{ 124 1 545 } car 124+421 = 545
{ 78 4 4884 } comme pour l'exemple donné dans le sujet.
Par contre, j'ai quelque souci avec 89 !
EDIT:
Problème résolu , je trouve { 89 24 # 8813200023188d }
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.
- gege
- Fonctionne à 14400 bauds
- Messages : 7148
- Enregistré le : 31 janv. 2008 14:24
- Localisation : Banlieue Paârisienne
- Contact :
Re: Misez p'tit Optimisez n°57 : palindromes
Pfouu ça a l'air dur, je croyais que tous les nombres avaient cette propriété, non démontrée...
Le nombre en question doit être assez élevé.
Je sors la TI89 "spéciale MPO".
Ah ben non, je sors le Hector !!
A bientôt,
G.E.
Le nombre en question doit être assez élevé.
Je sors la TI89 "spéciale MPO".
Ah ben non, je sors le Hector !!
A bientôt,
G.E.
- zpalm
- Fonctionne à 9600 bauds
- Messages : 2936
- Enregistré le : 03 mai 2008 15:33
- Localisation : Grenoble
Re: Misez p'tit Optimisez n°57 : palindromes
Le test du palindrome doit se faire après l'inversion-addition.C.Ret a écrit : J'obtiens alors :
{ 11 0 11 } car 11 est déjà un palindrome.
Bonne idée ! Qui sort son ZX 81?gege a écrit :Je sors la TI89 "spéciale MPO".
Ah ben non, je sors le Hector !!
- C.Ret
- Fonctionne à 9600 bauds
- Messages : 3422
- Enregistré le : 31 mai 2008 23:43
- Localisation : N 49°22 E 6°10
Re: Misez p'tit Optimisez n°57 : palindromes
OK, je corrige ;zpalm a écrit :Le test du palindrome doit se faire après l'inversion-addition.C.Ret a écrit : J'obtiens alors :
{ 11 0 11 } car 11 est déjà un palindrome.
Bonne idée ! Qui sort son ZX 81?gege a écrit :Je sors la TI89 "spéciale MPO".
Ah ben non, je sors le Hector !!
Code : Tout sélectionner
« 0 @ Initialise le compteur
OVER DUP PAL @ Inverse le nombre initial
DO @ Boucle principale du programme principal
+ @ Calcule la somme
1 ROT + @ Incrémente le compteur d'itération
SWAP DUP PAL @ Détermine le palindrome suivant
UNTIL DUP2 == END @ jusqu'à ce que la somme soit un palindrome
DROP 3 ->LIST @ Supprime le doublon et met en forme le résultat
»
Code : Tout sélectionner
n ité Palindrome n ité Palindrome
----- ---- ----------- ----- ---- -----------
1 1 2 5 2 11
2 1 4 6 2 33
3 1 6 7 2 55
4 1 8 8 2 77
10 1 11 9 2 99
11 1 22 19 2 121
12 1 33 28 2 121
13 1 44
14 1 55
15 1 66
16 1 77
17 1 88
18 1 99
20 1 22
21 1 33
22 1 44
23 1 55
24 1 66
25 1 77
26 1 88
27 1 99
29 1 121
30 1 33
Je branche mon Commodore C128D sur le coup !
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.
- zpalm
- Fonctionne à 9600 bauds
- Messages : 2936
- Enregistré le : 03 mai 2008 15:33
- Localisation : Grenoble
Re: Misez p'tit Optimisez n°57 : palindromes
Pour tester votre programme de génération de palindromes voici quelques nombres connus pour nécessiter de nombreuses itérations. Pouvez-vous déterminer combien ?
1 000 000 038 990 407 538
9 000 000 000 255 353 839
1 000 000 005 577 676 468
1 060 000 000 523 124 995
3 000 000 022 999 288 679
1 000 000 079 994 144 385
1 003 062 289 999 939 142
1 186 060 307 891 929 990
10 022 000 904 998 799 523
10 000 000 039 395 795 416
10 200 000 000 065 287 900
1 000 000 038 990 407 538
9 000 000 000 255 353 839
1 000 000 005 577 676 468
1 060 000 000 523 124 995
3 000 000 022 999 288 679
1 000 000 079 994 144 385
1 003 062 289 999 939 142
1 186 060 307 891 929 990
10 022 000 904 998 799 523
10 000 000 039 395 795 416
10 200 000 000 065 287 900
- C.Ret
- Fonctionne à 9600 bauds
- Messages : 3422
- Enregistré le : 31 mai 2008 23:43
- Localisation : N 49°22 E 6°10
Re: Misez p'tit Optimisez n°57 : palindromes
Code : Tout sélectionner
Entier Itérations: Palindrome final:
------------------- ----------- -----------------
89 24 8813200023188
1000000038990407538 217 4962760484013649979398288579669997647989565178566564484465665871565989746799966975882893979463104840672694
9000000000255353839 224 579922447678688885254995975774499665520124525649777656969656777946525421025566994477579599452588886876744229975
1000000005577676468 225 579922447678688885254995975774499665520124525649777656969656777946525421025566994477579599452588886876744229975
1060000000523124995 226 4577267267265113973218923972796414755643668659429704525555254079249568663465574146972793298123793115627627627754
3000000022999288679 258 44562665878976437622437848976653870388884783662598425855963436955852489526638748888307835667984873422673467987856626544
1000000079994144385 259 44562665878976437622437848976653870388884783662598425855963436955852489526638748888307835667984873422673467987856626544
1003062289999939142 260 44562665878976437622437848976653870388884783662598425855963436955852489526638748888307835667984873422673467987856626544
1186060307891929990 261 44562665878976437622437848976653870388884783662598425855963436955852489526638748888307835667984873422673467987856626544
10022000904998799523 255 44562665878976437622437848976653870388884783662598425855963436955852489526638748888307835667984873422673467987856626544
10000000039395795416 256 44562665878976437622437848976653870388884783662598425855963436955852489526638748888307835667984873422673467987856626544
10200000000065287900 257 44562665878976437622437848976653870388884783662598425855963436955852489526638748888307835667984873422673467987856626544
Mocrosoft Basic 7.0 for Commodore C128/C128D :
Code : Tout sélectionner
10 INPUT "N=";N$: S$=N$: N%=0
15 DO : REM ******* Boucle principale
20 : A$=S$: L%=LEN(A$): C%=0: S$=""
25 : B$="": FOR I=1 TO L%: B$=MID$(A$,I,1)+B$: NEXT I : REM * * * Inversion de A$ dans B$
30 : IF A$=B$ AND N%>0 THEN EXIT
35 : FOR I=1 TO L% : REM * * * Sommation S$=A$ + B$
40 : : S%=C%+VAL(MID$(A$,I,1))+VAL(MID$(B$,I,1))
45 : : C%=0:IF S%>9 THEN S%=S%-10:C%=1
50 : : S$=CHR$(48+S%)+S$
55 : NEXT I
60 : N%=N%+1:IF C% THEN S$="1"+S$
65 LOOP
70 PRINT "Initial :";N$ : REM * * * Presentation resultat
75 PRINT "Iterations:";N%
80 PRINT "Palindrome:";A$
85 END
Modifié en dernier par C.Ret le 08 juin 2014 17:56, 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.
- zpalm
- Fonctionne à 9600 bauds
- Messages : 2936
- Enregistré le : 03 mai 2008 15:33
- Localisation : Grenoble
Re: Misez p'tit Optimisez n°57 : palindromes
Étonnant non ?C.Ret a écrit : Ca c'est drôle alors, le même palindrome ?
Mon programme sur HP Prime est similaire au tien.C.Ret a écrit : Mocrosoft Basic 7.0 for Commodore C128/C128D
-
- Fonctionne à 1200 bauds
- Messages : 434
- Enregistré le : 05 juin 2014 22:23
- Localisation : Dans le Gâtinais avec les abeilles, près de Fontainebleau
Re: Misez p'tit Optimisez n°57 : palindromes
En fait, ce qui est évident, c'est qu'on peut facilement prouver qu'un nombre n'est pas de Lychrel... Pour ceux qui le seraient (car pour l'instant rien n'est prouvé), ça ne pourra se prouver que mathématiquement (avis aux associaux célibataires insomniaques ).zpalm a écrit : Pour la plupart des nombres entiers après quelques itérations on obtient un palindrome : un nombre qui écrit à l’envers est identique à lui-même.
Mais certains nombres résistent et ne semblent pas générer de palindrome: les nombres de Lychrel… trouvez le premier d’entre eux (le plus petit).
Le premier nombre suspecté d'être de Lychrel est 196 (on est arrivé à 300 millions de chiffres sans trouver de palindrome).
Merci Wikipedia http://fr.wikipedia.org/wiki/Nombre_de_Lychrel
Bon, je m'attaque à un programme quand même...
RetroGeek, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...
-
- Fonctionne à 1200 bauds
- Messages : 434
- Enregistré le : 05 juin 2014 22:23
- Localisation : Dans le Gâtinais avec les abeilles, près de Fontainebleau
Re: Misez p'tit Optimisez n°57 : palindromes
Hop, une première tentative de programme sur Z-1GR.C.Ret a écrit :Code : Tout sélectionner
10 INPUT "N=";N$: S$=N$: N%=0 15 DO : REM ******* Boucle principale 20 : A$=S$: L%=LEN(A$): C%=0: S$="" 25 : B$="": FOR I=1 TO L%: B$=MID$(A$,I,1)+B$: NEXT I : REM * * * Inversion de A$ dans B$ 30 : IF A$=B$ AND N%>0 THEN EXIT 35 : FOR I=1 TO L% : REM * * * Sommation S$=A$ + B$ 40 : : S%=C%+VAL(MID$(A$,I,1))+VAL(MID$(B$,I,1)) 45 : : C%=0:IF S%>9 THEN S%=S%-10:C%=1 50 : : S$=CHR$(48+S%)+S$ 55 : NEXT I 60 : N%=N%+1:IF C% THEN S$="1"+S$ 65 LOOP 70 PRINT "Initial :";N$ : REM * * * Presentation resultat 75 PRINT "Iterations:";N% 80 PRINT "Palindrome:";A$ 85 END
J'ai supprimé le calcul du palindrome en utilisant uniquement le nombre et en le parcourant en sens inverse au besoin (ça devrait aller bien plus vite) :
Code : Tout sélectionner
10 INPUT “ n= ”;n$:s$=n$:n=0
20 a$=s$:l=LEN(a$):i=1:s$= ” ”
30 IF MID$(a$,i,1)<>MID$(a$,l-i+1,1) THEN 50
40 i=i+1:IF i>INT(l/2) AND n>0 THEN 100 ELSE 30
50 c=0:FOR i=1 TO l:s=c+VAL(MID$(a$,i,1))+VAL(MID$(a$,l-i+1,1)):c=0:IF s>9 THEN s=s-10:c=1
60 s$=CHR$(s+48)+s$:NEXT i
70 n=n+1:IF c THEN s$= ”1 ”+s$
80 GOTO 20
100 PRINT "Initial :";n$
110 PRINT "Iterations:";n
120 PRINT "Palindrome:";a$
RetroGeek, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...
- gege
- Fonctionne à 14400 bauds
- Messages : 7148
- Enregistré le : 31 janv. 2008 14:24
- Localisation : Banlieue Paârisienne
- Contact :
Re: Misez p'tit Optimisez n°57 : palindromes
Bonjour,
j'ai bien trouvé 196 sur Graph 85, en quelques minutes.
Cette machine est bien agréable quand on a besoin de puissance.
L'astuce consiste à ne passer en multi-précision qu'en cas de besoin.
A bientôt pour une version "vrai Basic",
G.E.
j'ai bien trouvé 196 sur Graph 85, en quelques minutes.
Cette machine est bien agréable quand on a besoin de puissance.
L'astuce consiste à ne passer en multi-précision qu'en cas de besoin.
A bientôt pour une version "vrai Basic",
G.E.
-
- Fonctionne à 1200 bauds
- Messages : 434
- Enregistré le : 05 juin 2014 22:23
- Localisation : Dans le Gâtinais avec les abeilles, près de Fontainebleau
Re: Misez p'tit Optimisez n°57 : palindromes
Qu'as-tu trouvé ?gege a écrit :Bonjour,
j'ai bien trouvé 196 sur Graph 85, en quelques minutes.
Sachant qu'il n'y a pas de palindrome trouvé sur la première centaine de millions d'itérations.
RetroGeek, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...
- gege
- Fonctionne à 14400 bauds
- Messages : 7148
- Enregistré le : 31 janv. 2008 14:24
- Localisation : Banlieue Paârisienne
- Contact :
Re: Misez p'tit Optimisez n°57 : palindromes
Bonjour,
La machine trouve que 196 est le premier nombre pour lequel on ne trouve pas un palindrome en 100 itérations ou moins.
Temps : 69 secondes.
Le suivant est 295 (dont le centième itéré est 4.475777 .10^47 : 6 tranches de 8 chiffres).
Le temps de calcul augmente assez vite...
G.E.
La machine trouve que 196 est le premier nombre pour lequel on ne trouve pas un palindrome en 100 itérations ou moins.
Temps : 69 secondes.
Le suivant est 295 (dont le centième itéré est 4.475777 .10^47 : 6 tranches de 8 chiffres).
Le temps de calcul augmente assez vite...
G.E.
- C.Ret
- Fonctionne à 9600 bauds
- Messages : 3422
- Enregistré le : 31 mai 2008 23:43
- Localisation : N 49°22 E 6°10
Re: Misez p'tit Optimisez n°57 : palindromes
Ca c'est une bonne idée, que j'exploite dans cette seconde version totu en l'extrapolant ; pourquoi ne pas calculer la somme S$ tout en vérifiant qu'il ne s'agit pas d'un palindrome !caloubugs a écrit :[...]J'ai supprimé le calcul du palindrome en utilisant uniquement le nombre et en le parcourant en sens inverse au besoin (ça devrait aller bien plus vite) :[...]
Une première version surgit qui sort du calcul de la somme lorsque A$ est un palindrome.
Code : Tout sélectionner
10 INPUT "N=";N$: S$=N$: N%=0
15 DO : REM ******* Boucle principale
20 : A$=S$: L%=LEN(A$): C%=0: S$="": I%=1: P%=N%
25 : DO : REM **** Boucle Sommation/Detection Palindrome
30 : : A%=VAL(MID$(A$,I%,1)): B%=VAL(MID$(A$,1+L%-I%,1)): IF A%<>B% THEN P%=0 : REM P%=0 si A$ n'est pas palidromique
35 : : S%=48+C%+A%+B%: C%=0: IF S%>57 THEN S%=S%-10: C%=1 : REM C%=1 si retenue
40 : : S$=CHR$(S%)+S$: I%=I%+1: IF P%<>0 AND 2*I%>L% THEN EXIT : REM Calcul de la sommation arrêté si palindrome
45 : LOOP UNTIL I%>L%
50 : IF P%<>0 THEN EXIT : ELSE N%=N%+1: IF C% THEN S$="1"+S$
55 LOOP
60 PRINT "Initial :";N$ : REM * * * Presentation resultat
65 PRINT "Iterations:";N%
70 PRINT "Palindrome:";A$
75 END
Je préfère, et de loin, cette seconde version plus rationnelle et qui finit ce qu'elle commence:
Code : Tout sélectionner
10 INPUT "N=";N$: S$=N$: N%=0
15 DO : REM ******* Boucle principale
20 : A$=S$: L%=LEN(A$): C%=0: S$="": P%=N%
25 : FOR I=1 TO L% : REM **** Boucle Sommation/Detection Palindrome
30 : : A%=VAL(MID$(A$,I,1)): B%=VAL(MID$(A$,1+L%-I,1))
35 : : S%=48+C%+A%+B%: C%=0: IF S%>57 THEN S%=S%-10: C%=1 : REM C%=1 si retenue
40 : : S$=CHR$(S%)+S$: IF A%<>B% THEN P%=0 : REM P%=0 si A$ n'est pas palidromique
45 : NEXT I
50 : IF P% THEN EXIT : ELSE N%=N%+1: IF C% THEN S$="1"+S$
55 LOOP
60 PRINT "Initial :";N$ : REM * * * Presentation resultat
65 PRINT "Iterations:";N%
70 PRINT "Palindrome:";A$
75 END
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.
-
- Fonctionne à 1200 bauds
- Messages : 434
- Enregistré le : 05 juin 2014 22:23
- Localisation : Dans le Gâtinais avec les abeilles, près de Fontainebleau
Re: Misez p'tit Optimisez n°57 : palindromes
Mais ne pas trouver en 100 itérations ne veut pas dire qu'il n'y en a pas un plus loin, ça ne prouve rien...gege a écrit :Bonjour,
La machine trouve que 196 est le premier nombre pour lequel on ne trouve pas un palindrome en 100 itérations ou moins.
Temps : 69 secondes.
Le suivant est 295 (dont le centième itéré est 4.475777 .10^47 : 6 tranches de 8 chiffres).
Le temps de calcul augmente assez vite...
G.E.
Par contre 100 itérations en 69 secondes, pas mal comparé à 91 secondes pour le Basic de la casio Z-1 GR (mais je pense que ça devrait tourner autour de 50 en C, je vais voir pour faire le prog, quoique me prendre la tête avec les malloc, ça m'enchante moyen).
RetroGeek, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...
HP : 15C, 41CV, 48GX, 71B, 75C Canon X-07 Sharp PC 1403H, PC1500A, PC1600, PC-G850V Texas : CC40, 66, 74, 95, 92 Casio : PB-700, PB-1000, Z-1GR Psion 5mx, mais pas que...