From ee64eeaf694546988dd99545bd4d9624646b1d05 Mon Sep 17 00:00:00 2001 From: Belfadel Mohamed <mohamed.belfadel.etu@118p2.fil.univ-lille.fr> Date: Wed, 3 Apr 2024 10:41:22 +0200 Subject: [PATCH] distribute --- TP9/apqueue.py | 7 +++++++ TP9/card.py | 8 ++++++++ TP9/war.py | 15 +++++++++++++-- 3 files changed, 28 insertions(+), 2 deletions(-) mode change 100644 => 100755 TP9/apqueue.py mode change 100644 => 100755 TP9/war.py diff --git a/TP9/apqueue.py b/TP9/apqueue.py old mode 100644 new mode 100755 index cdc44f7..ded4cb4 --- a/TP9/apqueue.py +++ b/TP9/apqueue.py @@ -97,6 +97,13 @@ class ApQueue(): return ApQueue.ARROW + \ "|".join(str(el) for el in self.__content) + \ ApQueue.ARROW + + def __len__(self) -> int: + """ + return the length of this queue + """ + return len(self.__content) + if __name__ == '__main__': diff --git a/TP9/card.py b/TP9/card.py index 8203637..b6f4739 100755 --- a/TP9/card.py +++ b/TP9/card.py @@ -134,6 +134,14 @@ class Card(object): $$$ len(set(cartes)) len(cartes) """ + res=[] + for i in range(n_card): + valeur = random.randint(0,len(Card.VALUES)-1) + color = random.randint(0,len(Card.COLORS)-1) + carte = Card(Card.VALUES[valeur] , Card.COLORS[color]) + if carte not in res: + res.append(carte) + return res def __eq__(self, card: Card) -> bool: diff --git a/TP9/war.py b/TP9/war.py old mode 100644 new mode 100755 index e1acacc..7ceee82 --- a/TP9/war.py +++ b/TP9/war.py @@ -37,7 +37,18 @@ def distribute(n_card: int) -> tuple[ApQueue, ApQueue]: $$$ isinstance(carte, Card) True """ - ... + liste_carte = Card.deck(n_card*2) + queue_vide1 = ApQueue() + queue_vide2 = ApQueue() + m1 = liste_carte[:n_card] + m2 = liste_carte[n_card:] + for i in m1: + queue_vide1.enqueue(i) + for i in m2: + queue_vide2.enqueue(i) + return queue_vide1 , queue_vide2 + + def gather_stack(main: ApQueue, pile: ApStack) -> None: """ @@ -49,7 +60,7 @@ def gather_stack(main: ApQueue, pile: ApStack) -> None: $$$ main = ApQueue() $$$ pile = ApStack() $$$ for c in cartes: - ... pile.push(c) + pile.push(c) $$$ gather_stack( main, pile ) $$$ len( main ) == 4 True -- GitLab