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.
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 ...
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.
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.
Python c'est bon, mangez-en.