Bonjour à tous,
Je suis lycéen et en NSI nous avons des mini-projets à faire. J'ai choisit de réaliser une bataille navale
Petit problème la partie de mon programme qui place les bateaux ne fonctionne pas mais je ne comprend pas pourquoi
Voici mon code :
la fonction "construire_bateau" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 if tour_placement == 0 : bateau_1 = construire_bateau((position1,position2),(orient),2) carte[0][bateau_1[0][0]][bateau_1[0][1]] = 5 carte[0][position1,position2[1][0]][bateau_1[1][1]] = 5 if tour_placement == 1: bateau_2 = construire_bateau((position1,position2),(orient),3) carte[0][bateau_2[0][0]][bateau_2[0][1]] = 4 carte[0][bateau_2[1][0]][bateau_2[1][1]] = 4 carte[0][bateau_2[2][0]][bateau_2[2][1]] = 4 if tour_placement == 2: bateau_3 = construire_bateau((position1,position2),(orient),3) carte[0][bateau_3[0][0]][bateau_3[0][1]] = 3 carte[0][bateau_3[1][0]][bateau_3[1][1]] = 3 carte[0][bateau_3[2][0]][bateau_3[2][1]] = 3 if tour_placement == 3: bateau_4 = construire_bateau((position1,position2),(orient),4) carte[0][bateau_4[0][0]][bateau_4[0][1]] = 2 carte[0][bateau_4[1][0]][bateau_4[1][1]] = 2 carte[0][bateau_4[2][0]][bateau_4[2][1]] = 2 carte[0][bateau_4[3][0]][bateau_4[3][1]] = 2
La fonction "ajouter" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 def construire_bateau (pt, dir, lg): x, y = pt dx, dy = dir bateau = [pt] pt = ajouter(pt,dir) for i in range (lg-1): bateau.append(pt) pt = ajouter(pt,dir) return bateau
Merci par avance de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 def ajouter(point, vecteur): x, y = point dx, dy = vecteur return x+dx, y+dy![]()
Partager