Partage
  • Partager sur Facebook
  • Partager sur Twitter

Une petite aide de comprehension ?

    12 mai 2011 à 17:57:18

    Bonjour à tous,

    J'aurais besoin de votre aide pour m'aider à comprendre une portion de code svp :
    def alignements(c,l):
        return [((i,j),(0,1)) for i in range(l) for j in range(c-4)]+\
               [((i,j),(1,0)) for i in range(l-4) for j in range(c)]+\
               [((i,j),(1,1)) for i in range(l-4) for j in range(c-4)]+\
               [((i,j),(1,-1)) for i in range(l-4) for j in range(4,c)]
    
    def test_victoire(ali,tab):
        for ((l,c),(b,a)) in ali :
            if abs(sum([tab[l+b*i][c+i*a] for i in range(5)]))==5:
                return True
        return False
    


    En faite il s'agit d'un code qui permet de tester la victoire lors qu'un morpion à 5 lignes et colonnes,mais je n'arrive pas à comprendre.

    merci

    • Partager sur Facebook
    • Partager sur Twitter
      15 mai 2011 à 16:44:59

      c'est tordu,
      j'ai l'impression que la 1ere fonction est une sorte de flatten
      et la seconde teste en faisant une somme assez maladroitement d'ailleur, je pense que c'est un code de débutant.
      difficilement plus précis ...
      • Partager sur Facebook
      • Partager sur Twitter

      Python c'est bon, mangez-en. 

        15 mai 2011 à 17:52:32

        C'est mon prof qui nous a donné ce code...
        Mais pourrais-tu m'expliquer le principe stp...
        J'essaye de decomposer mais je ne vois pas trop à quoi cela sert...

        en faite il nous a dit que c'etait une fonction pour regarder toutes les combinaisons gagnante d'un jeu style morpion.
        • Partager sur Facebook
        • Partager sur Twitter

        Une petite aide de comprehension ?

        × 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