Partage
  • Partager sur Facebook
  • Partager sur Twitter

Petit casse tête

Sujet résolu
    7 septembre 2018 à 18:56:29

    Bonjour, après avoir passé les test pour 42 je suis arrivé au niveau 15 et je suis rester bloqué :/

    Les règles sont simple, la flèche doit récupérer les 3 étoile sur le labyrinthe pour ce faire :

    Sur la partie de droite de l'image (commandes) Il y a toutes les fonction utilisable a savoir :

       Avancer, pivoter la flèche vers la gauche, pivoter la flèche vers la droite, exécuter f1 et exécuter f2

    en sachant qu'à cela vous pouvez y ajouter une condition (bleu, orange, vert)

    L'espace disponible est celui de la partie fonction a savoir f1 dispose de 4 case et il en est de même pour f2

    J'y ai passer un bon nombre d'heure, j'ai demandé a mes collègues mais pour l’instant on a toujours pas trouvé :/

    Merci a ceux qui passeront du temps et qui trouveront :p

    Au plaisir

    -
    Edité par LaurentChartier1 7 septembre 2018 à 18:58:29

    • Partager sur Facebook
    • Partager sur Twitter
      9 septembre 2018 à 9:24:42

      si personne n'a trouvé, y a-t-il vraiment une solution?:'( Est ce un test extrait d'une épreuve réelle? 

      Si je pose la question, c'est parce que pour ma part, pour le peu de tests de ce type que j'ai pu regarder, je n'ai jamais vu un test  avec  étoiles en extrémité de branches isolées avec les contraintes imposées ici. 

      Le problème sousjacent est de trouver un algorithme qui permette un demi tour en extrémité, ce qui est possible, par exemple,   si la couleur des cases d'extrémités est différentes (c'est le cas en général,  bleues ici). Ou alors il faudrait soit  une croix moins longue, soit plus que 4  cases pour les fonctions.

       si les cases étoilées étaient bleues , une recherche rapide avec deux fois quatre cases  me donne cela qui me semble résoudre dans ce cas:

      F1 F1 F2
      F2 → (bleu) → (bleu) ↑(bleu) F1

      Mais si les cases étoilées sont bien oranges... c'est sans doute réservé aux petits génies entrant à 42 :zorro:

      -
      Edité par Sennacherib 9 septembre 2018 à 9:25:41

      • Partager sur Facebook
      • Partager sur Twitter
      tout ce qui est simple est faux, tout ce qui est compliqué est inutilisable
        9 septembre 2018 à 10:17:20

        Salut,
        Je n'ai jamais fait de tel test donc je ne connais pas bien les règles.
        Qu'est ce qui se passe si on avance quand on pointe vers le vide ?
        Si on reste juste su place, est qu'une solution simple sans condition comme :

        F1 = A A A F2

        F2 = A A G F1

        (avec G = pivoter à gauche ;   A =  avancer  ; D = pivoter à droite )

        ne fonctionne pas ?

        • Partager sur Facebook
        • Partager sur Twitter
          9 septembre 2018 à 12:52:29

          on n'a pas le droit d'avancer "vers le vide" ,je pense ( en fait je suis quasi certain, il faut détecter qu'on est en butée), c'est pour cela que il y a un problème

          ...sinon je pense que LaurentChartier 1 ou ses collègues auraient trouvé depuis longtemps une solution ! :-°

          En plus même possible, je ne vois pas comment ton algorithme marcherait. Il ne permet pas de faire demi-tour ( un tourne-gauche ou droite n'est pas suffisant). Regarde mon exemple, on tourne deux fois pour être dans le bon sens avant de repartir.

          -
          Edité par Sennacherib 9 septembre 2018 à 12:54:30

          • Partager sur Facebook
          • Partager sur Twitter
          tout ce qui est simple est faux, tout ce qui est compliqué est inutilisable
            9 septembre 2018 à 13:23:59

            Sennacherib a écrit:

            En plus même possible, je ne vois pas comment ton algorithme marcherait. Il ne permet pas de faire demi-tour ( un tourne-gauche ou droite n'est pas suffisant). Regarde mon exemple, on tourne deux fois pour être dans le bon sens avant de repartir.

            -
            Edité par Sennacherib il y a 24 minutes


            Oui justement :
            On avance 5 fois. On se retrouve au milieu, on tourne à gauche (donc en direction de l'étoile de gauche). On avance 5 fois  jusqu'à l'étoile. On tourne à gauche. On avance 5 fois en butée donc on reste sur la même case. On tourne à gauche (donc on a tourné deux fois et fait un 1/2 tour). On avance 5 fois donc on se retrouve à nouveau au milieu. On tourne à gauche (donc en direction de l'étoile du haut). On avance 5 fois vers l'étoile du haut. Et ainsi de suite.

            -
            Edité par macaque 9 septembre 2018 à 13:26:37

            • Partager sur Facebook
            • Partager sur Twitter
              9 septembre 2018 à 14:22:09

              oui enfin ce que tu décris n'est pas possible,  il faut une solution avec les règles du jeu ....

              En bref, 

              macaque a écrit:

               .
              Qu'est ce qui se passe si on avance quand on pointe vers le vide ?
               

               rien... on te dit que tu as faux et on te  demande d'essayer à nouveau! :lol:

              -
              Edité par Sennacherib 9 septembre 2018 à 14:30:22

              • Partager sur Facebook
              • Partager sur Twitter
              tout ce qui est simple est faux, tout ce qui est compliqué est inutilisable
                9 septembre 2018 à 14:46:44

                Salut, désolé de ne pas avoir répondu, j'ai trouvé la réponse :

                http://www.robozzle.com/beta/index.html?puzzle=171&program=Oemmgeezgfbaa

                f1 : F2 droite droite F1

                f2 : avance F2(Orange) gauche(Vert) avance

                Merci a tous et encore sry ;)

                • Partager sur Facebook
                • Partager sur Twitter
                  9 septembre 2018 à 17:35:18

                  rien dit

                  -
                  Edité par Sennacherib 9 septembre 2018 à 17:52:32

                  • Partager sur Facebook
                  • Partager sur Twitter
                  tout ce qui est simple est faux, tout ce qui est compliqué est inutilisable
                    9 septembre 2018 à 17:54:55

                    @Sennacherib La solution est que F2 est une fonction récursive avec des instructions après l'appel de fonction.
                    On a empilé plusieurs appel de F2 successif, ceux-ci sont ensuite "dépilés" et on exécute les instructions qui suivent.
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Petit casse tête

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown