Question (récurrente) du Dimanche Après-Midi.

Les derniers trucs auxquels vous avez joué, les derniers ordinateurs que vous avez bidouillés.

Modérateur : Politburo

Répondre
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

Question (récurrente) du Dimanche Après-Midi.

Message par C.Ret »

Bonsoir chers amis.

Ce n'est pas faute de m'avoir prévenu. Mais l'on écoute que ce que l'on aime entendre.
Mais je crois bien qu'à force de les utiliser , je vais finir par les casser !

En attendant j'ai passé une fort agréable après-midi dominicale et je vous donne ce soir de quoi deviner à quel jeu je me suis adonné.

Pour vous donner quelque chance de trouver, j'ai retranscrit ci-dessous les résultats de mes calculs:

Code : Tout sélectionner

	a	b	c	F(a,b,c)	rec	t
	12	12	12	12		*1*	    .7"
	12	15	18	15	  	*1*	    .7"
	12	18	15	18		*1*	    .7"
	15	12	18	18		*673*	  57.7"
	15	13	16	16		*17*	   2.0"
	15	18	12	18	  	*1*	    .7"
	18	12	15	15		*33*	   3.4"
	18	15	12	18		*673*	  57.7"
	19	16	12	19		*3237*	4'35.3"
	23	17	15	23		*7017*	9'56.2"
Trouverez-vous de quelle fonction F() il s'agit ? Et surtout, comment je l'ai définie pour que certains résultats soient si long à s'afficher ??

Ai-je une chance d'obtenir le résultat de F(237,156,63) avant la fin de la semaine, du moi, du trimestre, de l'année , ... de la fin du monde ?

Y aurait-il une méthode plus efficace ?
Merci de me la signaler.

Bonne semaine à vous tous.
Modifié en dernier par C.Ret le 22 juin 2022 13:33, 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
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: Question (récurrente) du Dimanche Après-Midi.

Message par C.Ret »

Bon, comme c'est mercredi et que tout le monde sèche et s'en fou(*).

Je donne un indice de taille en précisant qu'il ne s'agit pas de ce type d'engin

Image

enfin presque. Ce qui est sûr, c'est qu'il vous faudra une machine au moins aussi puissante pour venir à bout de mon chantier !

(*) Ce n'est pas grâve, je crois que je tiens là le sujet d'un de mes prochains article dans la Gazette.
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
dprtl
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 463
Enregistré le : 27 janv. 2013 00:26
Localisation : Strasbourg
Contact :

Re: Question (récurrente) du Dimanche Après-Midi.

Message par dprtl »

Avec l'indice, il s'agit bien entendu de la fonction Tak, proposée par Takeuchi. Son autre définition, non doublement récursive, est d'une simplicité désarmante : deux tests comparatifs maximum !
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: Question (récurrente) du Dimanche Après-Midi.

Message par C.Ret »

Oui, je ne connaissais pas !

C'est étonnant comment la version non récursive est d'une simplicité désarmante.
Ce qui m'a beaucoup amusé et occupé aussi est, que contrairement à d'autres fonctions exemples de structures informatiques, celle-ci ne produit pas de nombres gigantesque ou de problème de précision.

C'est même tout l'inverse, les résultats sont toujours exactement du même ordre de grandeur que l'un des paramètres.

Par contre, si l'on s'oblige à utiliser la version récurrente, cette fonction peut devenir un bon exercice de programmation. Qui peut être élémentaire sur certaines machines plus à l'aise avec les définitions par récurrence, mais aussi, pas mal d'astuces pour d'autres systèmes comme ceux avec des piles quasi infinie, ou, comme l'a fait gégé dans la dernière gazette avec une simple structure de données en BASIC rudimentaire.

J 'ai là, je crois, de quoi faire un petit article qui, j'en suis sûr passionnera les lecteurs de la Gazette.

Je crois que cette fonction, à l'origine, a été crée pour tester les performances de systèmes LISP

Ce week-end, je vais essayer de trouver la publication John McCarthy de qui a trouvé et démontré la version simple non récurrente; Surtout tenter de comprendre quelque chose aux théorèmes propriétés qu'il utilise.
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: Question (récurrente) du Dimanche Après-Midi.

Message par Danny »

À ne pas confondre avec sa cousine, la fonction Tik.





Désolé, bonne soiré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: Question (récurrente) du Dimanche Après-Midi.

Message par C.Ret »

dprtl a écrit : 03 févr. 2021 21:36...une simplicité désarmante : deux tests comparatifs maximum !

Oui, c'es vrai, mais tout le fun disparait.

En plus, la récurrence a transformée mon HP-28S en instrument de musique, elle me joue maintenant de vrai concerts: les autres RPL peuvent en faire de même :

Deux petits codes suffisent :

Code : Tout sélectionner

TAK:
« NBEEP 
  IF 3 DUPN  DROP  <=  THEN  ROT  2 DROPN  ELSE  3 PICK  1  -  3 PICK  3 PICK  TAK
                                                 3 PICK  1  -  3 PICK  6 PICK  TAK
                                                 3 ROLL  1  -  5 ROLL  5 ROLL  TAK TAK END 
 
  DUP 10 * 100 + .3 BEEP »

NBEEP:  « 3 DUPN
               10  *  100  +  .1  BEEP
               10  *  100  +  .1  BEEP
               10  *  100  +  .1  BEEP »
Tapez par exemple 3 2 1 TAK vous obtiendrez bien évidement 2, mais en musique comme sur ce site source de mon inspiration.
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: Question (récurrente) du Dimanche Après-Midi.

Message par Danny »

Sympas les arpèges :geek:
? Apple, Atari, Canon, Casio, ????????????, HP, Psion, Sharp, Tandy... même TI.
Répondre

Retourner vers « A quoi t'as joué hier ? »