Enigmes

Forum dédié aux énigmes et à toutes formes de jeux de logique.

Déconnexion

Tu n'es pas identifié sur Prise2tete : s'identifier.

accueil Accueil forum Forum
[+]

Écrire une réponse

Attention : Aucun indice ou demande d'aide concernant les énigmes de Prise2Tete n'est accepté sur le forum ! Rends-toi sur le cercle des sages si tu as besoin d'aide !
Tout nouveau message ou sujet ne respectant pas cette règle sera supprimé, merci.
Rédige ton message
| | | | Upload | Aide
:) :| :( :D :o ;) :/ :P :lol: :mad: :rolleyes: :cool:
Options
Sécurité

Répondez (numériquement) à la petite énigme suivante : 

Dans une course, vous doublez le 19ème, en quelle position êtes-vous ?

Retour

Résumé de la discussion

scarta
29-01-2014 16:49:29

Salut à tous !
Je sais, je ne passe plus souvent sur P2T et non,je ne fais pas mon retour actif sur le forum smile
Je passais juste vous proposer une petite enigme "informatique"

Je repense souvent à un certain post de Nicouj, très intéressant à plus d'un titre, sur la manipulation de listes avec un langage extrèmement réduit.

Voici l'énoncé: on dispose d'un langage informatique très restrictif, qui garde les mêmes spécifications que dans le premier problème, à savoir
- Le langage ne permet de ne définir qu'une seule fonction F.
- Cette unique fonction F ne peut avoir qu'un seul paramètre.
- Le langage ne permet pas de définir de variable auxiliaire.
- Il ne connait que deux type de données : les entiers et les listes d'entiers.
- Il est récursif
- Il fournit une conditionnelle if/then/else classique
- Il dispose d'opérations de base sur les listes :
    * une fonction list.empty qui indique si "list" est vide,
    * une fonction list.head qui retourne le premier élément de "list"
    * une fonction list.tail qui retourne "list" privée de son premier élément
    * une fonction A + list qui retourne une liste composée de l'entier A suivi du contenu de "list"
Attention: l'opération list + A n'est pas supportée

La question est la suivante : définir si possible une fonction F qui prend en paramètre une liste et qui retourne la même liste, mais inversée.
Par exemple:
F({1,2,3,4,6,5}) = {5,6,4,3,2,1}

Indice : Spoiler : [Afficher le message] F(F(liste))=?

Bon courage

Pied de page des forums

P2T basé sur PunBB
Screenshots par Robothumb

© Copyright 2002–2005 Rickard Andersson

Prise2Tete Forum Statistiques Liste des membres Hall of Fame Contact
© Prise2tete - Site d'énigmes et de réflexion.
Un jeu où seules la réflexion, la logique et la déduction permettent de trouver la solution.

Flux RSS de Prise2Tete Forum Jeux & Prise2Tete Test & Prise2Tete Partenariat et Publicité sur Prise2Tete