Mais qu'est-ce que c'est ? KEZAKO numéro 2

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
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3405
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par C.Ret »

Bonjour,

Afin de réitéré l'initiative initiée par marge, je vous propose de poursuivre cette nouvelle activité récréative en trouvant ce que fait le code donné ci-dessous.

KEZAKO n°2
10 WAIT 0: FOR K=0 TO 54:N=K^3,S=K/10
20 N= INT N/10: IF N LET S=S-N+ INT N: IF S>=0 GOTO 20
40 IF S=0 PRINT K^3;
50 NEXT K: BEEP 1: END


Tenant compte des messages formulées lors du KEZAKO n°1, je me suis permis de présenter un code en BASIC tel que l'on peut le trouver sur certains de nos ordinateurs de poche.

Ce problème est élémentaire et dénoué de toute ambiguïté. N'hésitez pas à faire part publiquement de vos remarques, interrogations ou commentaires dans ce fil. De même, j'invite ceux qui auraient déjà trouvé à nous le faire savoir au plus vite en nous donnant quelque information pertinente sans toutefois trop dévoiler le mystère de ce problème très simple.

Vos réponses et questions, ainsi que les messages et images que je ne manquerai pas de distiller au cours de la semaine, seront, comme pour le premier opus, des indices précieux qui s'égraineront au rythme de vos interventions.

Bon week-end :)
KEZAKO2_Fig01.png
KEZAKO2_Fig01.png (20.39 Kio) Vu 2099 fois
Modifié en dernier par C.Ret le 04 juin 2023 08:09, 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.
Avatar du membre
Marge
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 6172
Enregistré le : 01 oct. 2008 14:39
Localisation : En bas, tout au fond à gauche.

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par Marge »

Bravo ! J'avais bien pensé à vous lancer ce week-end sur un KEZAKO n°2, mais ce sera donc un numéro 3 dans quelque temps...
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
Marge
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 6172
Enregistré le : 01 oct. 2008 14:39
Localisation : En bas, tout au fond à gauche.

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par Marge »

Profitant d'un décalage horaire favorable, j'ose une hypothèse bigrement audacieuse (et pour cause) :
S : Sommet !
Mais enfin, cela mérite réflexion.
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 : 3405
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par C.Ret »

Marge a écrit : 04 juin 2023 00:29Profitant d'un décalage horaire favorable, j'ose une hypothèse bigrement audacieuse (et pour cause)
Tu as bien raison, n'hésite pas, vivre en "bas, tout au fond à gauche" ne doit pas avoir que des désagréments. Je ne peux que t'encourager à profiter de tout avantage lié à cette difficile position géographique.

Marge a écrit : 04 juin 2023 00:29
S : Sommet !
Somme toute, faite des maigres et fallacieux indices donnés jusqu'ici, je peux affirmer que non pas du tout.

J'en profite pour encore mal-in-dicer les choses tout en rappelant la multitude de ces symboles:
KEZAKO2_Fig02.gif
KEZAKO2_Fig02.gif (70.05 Kio) Vu 2023 fois

Marge a écrit : 04 juin 2023 00:29Mais enfin, cela mérite réflexion.
C'est là tout l'art et la raison d'être d'un Kézako !
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
Over_score
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 168
Enregistré le : 26 mars 2019 14:55
Localisation : Pas loin de Smartville

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par Over_score »

Je vais enfoncer des portes ouvertes !
C'est la liste des cubes qui ont une particularité numérique :D
Avatar du membre
Over_score
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 168
Enregistré le : 26 mars 2019 14:55
Localisation : Pas loin de Smartville

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par Over_score »

Est-ce que 46459 est un bon indice ?
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: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par C.Ret »

Over_score a écrit : 04 juin 2023 09:32C'est la liste des cubes qui ont une particularité numérique
:D OUUUUUUIiiiiii

KEZAKO2_Fig03.gif
KEZAKO2_Fig03.gif (30.65 Kio) Vu 2014 fois
Over_score a écrit : 04 juin 2023 09:55Est-ce que 46459 est un bon indice ?
:cry: NOOOOOONnnnnnnn

Tout au moins celui-ci ne fait pas partie de l'équipe.
KEZAKO2_Fig04.gif
KEZAKO2_Fig04.gif (34.74 Kio) Vu 2014 fois
Modifié en dernier par C.Ret le 04 juin 2023 17:10, 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.
Avatar du membre
Over_score
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 168
Enregistré le : 26 mars 2019 14:55
Localisation : Pas loin de Smartville

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par Over_score »

Vu la petite image des nains, je pense que mon indice 46459 est bon !
FLISZT
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 655
Enregistré le : 09 mars 2022 19:14

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par FLISZT »

Déjà, on sait que ce n'est ni du A ni du R… PL.
Pourtant dans ce programme écrit dans un BASIC pas très standard (pas de THEN) deux choses m'intriguent (enfin surtout une) :

1) Ligne 20 : (…) IF N LET S=S-N+ INT N: (…)

Il faut bien sûr comprendre (en tout cas, c'est ce que "comprend" mon X-07) IF N=0 LET
N'est-il pas ?


2) La ligne 20 se termine par IF S>=0 GOTO 20
Quand pourra être executée la ligne suvante n° 40 : IF S=0 PRINT K^3; ?

Réponse : quand (si…) S a une valeur négative, mais alors quid du PRINT K^3; ?

Me fourvoie-je ?

Sinon, le premier indice nous montre un triangle équilatéral se transformant, dans une magnifique chorégraphie de formes et de couleurs,
en un carré… j'ai hâte de voir l'entrée en scène de Blanche-Neige !

:D
Modifié en dernier par FLISZT le 05 juin 2023 03:29, modifié 1 fois.
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
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: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par C.Ret »

Over_score a écrit : 04 juin 2023 10:26Vu la petite image des nains, je pense que mon indice A046459 est bon !
:( Non malheureusement, ce n'est pas la seule séquence qui n'ai que sept entiers

Mais, cela pourrait être très proche, sur une bonne piste en tout cas...
... sauf qu'un PRINT K^3; ne peut pas tracer une telle piste !
Image

Ce qui est clair c'est qu'Over_Score est sur la bonne voie... :wink: A l'heure où j'écris ces lignes, il a peut-être déjà trouvé. :lol:

FLISZT a écrit : 04 juin 2023 16:57Déjà, on sait que ce n'est ni du A
Si comme je l'indique ci-dessus, c'est bien du A, mais pas le bon...

FLISZT a écrit : 04 juin 2023 16:57ni du R… PL.
J'ai sous le coude la version RPL, pour HP-28S en fait, mais je ne la donnerai qu'au plus tôt demain soir car elle dévoile explicitement un secret que je souhaite taire encore un peu pour ne pas divulguer ou gâcher le plaisir de nos chercheurs...

FLISZT a écrit : 04 juin 2023 16:57Pourtant dans ce programme écrit dans un BASIC pas très standard (pas de THEN)
C'est pourtant un BASIC tout à fait standard pour cette marque de Pocket Computers...
FLISZT a écrit : 04 juin 2023 16:57Il faut bien sûr comprendre (en tout cas, c'est ce que "comprend" mon X-07) IF N=0 LET
N'est-il pas ?
Non justement c'est peut-être l'inverse ?
J'ai volontairement laissé ainsi même si ce n'est pas très clair. Il faut donc d'abord trouver de quel dialecte pseudo-BASIC il s'agit pour trouver l'évaluation rigoureuse effectuée par cet engin. Ou procéder par analyse; à quoi sert d'ajouter ou retirer à S une partie ou l'autre de N si N est nul ?

Oui je sais ce n'est pas bien...
... mais c'est volontaire afin d'ajouter un peu le piment ou de difficulté à ce puzzle. Je me méfie. Il y a du level parmi les lecteur de ce forum. Je ne voudrait pas les offenser en proposant un jeu trop facile.

FLISZT a écrit : 04 juin 2023 16:57Me fourvoie-je ?
Oui, un peu.
Mais cela à l'avantage de mettre en évidence un point très important de l'algorithme décrit par ce KEZAKO n°2.
Point très important et très subtil qui fait d'ailleurs que la ligne 30 a complètement disparue du programme car , justement, rendue inutile par ce test sur S qui, rappelons-le, n'est somme toute pas un sommet.
KEZAKO2_Fig05.gif
KEZAKO2_Fig05.gif (120.53 Kio) Vu 1937 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.
FLISZT
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 655
Enregistré le : 09 mars 2022 19:14

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par FLISZT »

FLISZT a écrit : 04 juin 2023 16:57 1) Ligne 20 : (…) IF N LET S=S-N+ INT N: (…)

Il faut bien sûr comprendre (en tout cas, c'est ce que "comprend" mon X-07) IF N=0 LET
N'est-il pas ?
Long soupir……… 𝄽
Peut-être même une pause ou deux… ce qui fait bcp de soupirs !

Bien que sûr que non ! Ni en BASIC ni en RPL ! :evil:
C'est exactement l'inverse : IF N <> 0 …
C.Ret a écrit : 04 juin 2023 17:39
FLISZT a écrit : 04 juin 2023 16:57Me fourvoie-je ?
Oui, un peu.
… si peu ! :wink:
Faut que je pense à prendre du repos à l'occasion… :?
C.Ret a écrit : 04 juin 2023 17:39
FLISZT a écrit : 04 juin 2023 16:57Pourtant dans ce programme écrit dans un BASIC pas très standard (pas de THEN)
C'est pourtant un BASIC tout à fait standard pour cette marque de Pocket Computers...
Les seules versions du BASIC que j'ai découvertes (en 1984) sont celles du X-07 et du Mini 6 de chez BULL.
Peut-être un peu de GW / BASICA ?

Dans toutes ces versions le THEN est obligatoire sauf (en tout cas sur X-07, pour le reste c'est trop ancien pour que je m'en souvienne) dans le cas suivant :

IF <test> … GOTO <n° ligne > ELSE …

(sans THEN obligatoire avant un GOTO…Mais il faut un THEN avant un GOSUB)

536 Puzzles & curious problems
Un livre de 1967… ouvrez l'œil ! :wink:
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
Over_score
Fonctionne à 300 bauds
Fonctionne à 300 bauds
Messages : 168
Enregistré le : 26 mars 2019 14:55
Localisation : Pas loin de Smartville

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par Over_score »

Il faut faire attention au N=INT N/10, qui si je traduis veut dire N = INT(N) / 10.
Et S = S - N + INT N veut dire S = S - (N - INT N) donc S moins la partie décimale de N.

Tout cela nous amène à la liste des k³ dont la somme des chiffres est égale à k. et il y en a seulement 7, comme les nains…

En programmant ça dans un langage moderne, il faut faire attention aux arrondis approximatifs des réels codés en binaire. Si on utilise des nombres flottants décimaux (decimal floating points), il n'y a pas ce problème.

Ma version C :

Code : Tout sélectionner

#include <stdio.h>
#include <stdlib.h>
#include <math.h>

double integer(double x) {
  if(x >= 0) return floor(x);
  return -floor(-x);
}

int main(void) {
  double k, n, s;

  for(k=0; k<=54; k+=1.0) {
    n = k*k*k;
    s = k / 10.0;

l20:
    n = integer(n) / 10.0;
    if(n != 0.0) {
      s = s - (n - integer(n));
      if(s + 0.0001 >= 0.0) goto l20;
    }

    if(fabs(s) <= 0.0001) printf("%.0f\n", k*k*k);
  }

  return 0;
}
FLISZT
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 655
Enregistré le : 09 mars 2022 19:14

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par FLISZT »

Over_score a écrit : 04 juin 2023 20:25 Il faut faire attention au N=INT N/10, qui si je traduis veut dire N = INT(N) / 10.
Merci pour cette précision bien utile ! (en tout cas pour moi)

En revanche la suite ne m'a pas posé de problème :
Over_score a écrit : 04 juin 2023 20:25 Et S = S - N + INT N veut dire S = S - (N - INT N) donc S moins la partie décimale de N.
Et donc je traduis sur mon X-07 :

S = S - N + INT N … par… S = S - N + INT(N) … of course.

Bref… je crois que nous avons un vainqueur en la personne de Over_score.

27^3 bravos ! :D
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
Marge
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 6172
Enregistré le : 01 oct. 2008 14:39
Localisation : En bas, tout au fond à gauche.

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par Marge »

Je profite du décalage horaire, sinon hebdomadaire (voire pire) pour suggérer l’hypothèse suivante :
Ce programme est fortement relié à l’un des thèmes suggérés là : http://www.silicium.org/forum/viewtopic ... 01#p579573
Mais enfin, nous sommes tous d’accord, cela reste à creuser.
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é.
FLISZT
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 655
Enregistré le : 09 mars 2022 19:14

Re: Mais qu'est-ce que c'est ? KEZAKO numéro 2

Message par FLISZT »


L'air de rien, voici ma version R !
R.png
R.png (27.8 Kio) Vu 1887 fois
C'est mon premier programme en langage R !

Le premier sur Silicium ?!
À ces mots le Corbeau ne se sent pas de joie,
Et pour montrer son beau programme…
:D
Bruno
Sanyo CZ-0124 ? TI-57 ? HP-15C ? Canon X-07 + XP-140 Monitor Card ? HP-41CX ? HP-28S ? HP-50G ? HP-50G
Répondre

Retourner vers « Tous les Pockets »