|
|
|
@ -17,7 +17,7 @@
|
|
|
|
|
> ---
|
|
|
|
|
>
|
|
|
|
|
> **Si** **CarteMere** est NULL alors
|
|
|
|
|
>
|
|
|
|
|
>
|
|
|
|
|
>// L'assemblage est parfait car il n'y a pas de contrainte
|
|
|
|
|
>
|
|
|
|
|
>> retourne 2
|
|
|
|
@ -26,13 +26,13 @@
|
|
|
|
|
>
|
|
|
|
|
>//Recherche des coordonnées du point et du cercle sur la variable **Carte**
|
|
|
|
|
>
|
|
|
|
|
> **Cox1,Coy1,Cox2,Coy2** = rechercheCo(**Carte**)
|
|
|
|
|
>
|
|
|
|
|
> **Cox1,Coy1,Cox2,Coy2** = rechercheCo(**Carte**)
|
|
|
|
|
>
|
|
|
|
|
>
|
|
|
|
|
> // **CAS N°1 :** Il existe déjà un ensemble ( point <=> cercle) sur **CarteMere** là où **Carte** posséde un point ou un rond
|
|
|
|
|
>
|
|
|
|
|
> // **CAS N°1 :** Il existe déjà un ensemble ( point <=> cercle) sur **CarteMere** là où **Carte** posséde un point ou un rond
|
|
|
|
|
>
|
|
|
|
|
> **Si** **CarteMere**(Coy1,Cox1) == 3 ou **CarteMere**(Coy2,Cox2) == 3 alors
|
|
|
|
|
>
|
|
|
|
|
>
|
|
|
|
|
>>// Impossible d'empiler
|
|
|
|
|
>
|
|
|
|
|
>>retourne 0
|
|
|
|
@ -63,9 +63,9 @@
|
|
|
|
|
>
|
|
|
|
|
>retourne 0
|
|
|
|
|
|
|
|
|
|
###FIN
|
|
|
|
|
### FIN
|
|
|
|
|
|
|
|
|
|
##COMPARAISON TOTAL DE LA CARTE
|
|
|
|
|
## COMPARAISON TOTAL DE LA CARTE
|
|
|
|
|
|
|
|
|
|
**ComparaisonTotal(CarteMere:Matrice(4,3) d'entiers,CarteFille:Matrice(4,3), index entier)**:entier,Tableau(4,3) d'entiers
|
|
|
|
|
|
|
|
|
@ -96,7 +96,7 @@
|
|
|
|
|
>//On obtient ces opérations suivantes
|
|
|
|
|
>
|
|
|
|
|
> **Si** index == 1 alors
|
|
|
|
|
>
|
|
|
|
|
>
|
|
|
|
|
>> // On effectue une rotation verticale pour obtenir **la 2eme variante**
|
|
|
|
|
>
|
|
|
|
|
>>CarteFille <- rotationVerticale(CarteFille)
|
|
|
|
@ -195,9 +195,9 @@
|
|
|
|
|
>
|
|
|
|
|
### FIN
|
|
|
|
|
|
|
|
|
|
#ASSEMBLAGE
|
|
|
|
|
# ASSEMBLAGE
|
|
|
|
|
|
|
|
|
|
**Assemblage(TasDeCarte: Liste Matrice(4,3),CarteMere:Matrice(4,3)** :entier, Matrice(4,3)
|
|
|
|
|
**Assemblage(TasDeCarte: Liste Matrice(4,3),CarteMere:Matrice(4,3)** :entier, Matrice(4,3)
|
|
|
|
|
|
|
|
|
|
**Entree** : **TasDeCarte** Liste Matrice(4,3), CarteMere Matrice(4,3)
|
|
|
|
|
|
|
|
|
@ -205,7 +205,7 @@
|
|
|
|
|
|
|
|
|
|
**Objectif** : Savoir si un tas de carte envoyé en paramètre peut être empiler ou non
|
|
|
|
|
|
|
|
|
|
###DEBUT
|
|
|
|
|
### DEBUT
|
|
|
|
|
>###Variable locale
|
|
|
|
|
>
|
|
|
|
|
>**Carte** Matrice(4,3)
|
|
|
|
@ -218,7 +218,7 @@
|
|
|
|
|
>
|
|
|
|
|
>---
|
|
|
|
|
>
|
|
|
|
|
>// Si le tas de carte est NULL il ne peut pas rapporter de point donc on ne peut pas l'assembler sinon on traite la première carte
|
|
|
|
|
>// Si le tas de carte est NULL il ne peut pas rapporter de point donc on ne peut pas l'assembler sinon on traite la première carte
|
|
|
|
|
>
|
|
|
|
|
>**Si** **TasDeCarte** est NULL
|
|
|
|
|
>
|
|
|
|
@ -239,9 +239,9 @@
|
|
|
|
|
>
|
|
|
|
|
>**Fin si**
|
|
|
|
|
>
|
|
|
|
|
>// En fonction du Résultat obtenue on traite
|
|
|
|
|
>// En fonction du Résultat obtenue on traite
|
|
|
|
|
>
|
|
|
|
|
>// Cas 1 : Si Code vaut 2 et que TasDeCarte est NULL on a atteint la fin du paquet et l'assemblage est parfait
|
|
|
|
|
>// Cas 1 : Si Code vaut 2 et que TasDeCarte est NULL on a atteint la fin du paquet et l'assemblage est parfait
|
|
|
|
|
>
|
|
|
|
|
>**Si** **Code** vaut 2 et **TasDeCarte** est NULL
|
|
|
|
|
>
|
|
|
|
@ -251,7 +251,7 @@
|
|
|
|
|
>
|
|
|
|
|
>// Cas 2 : TasDeCarte est NULL mais l'assemblage n'est pas parfait. On ne peut pas assembler correctement le tas de carte. On le signal
|
|
|
|
|
>
|
|
|
|
|
>**Si** **TasDeCarte** est NULL et **Code** different de 2
|
|
|
|
|
>**Si** **TasDeCarte** est NULL et **Code** different de 2
|
|
|
|
|
>
|
|
|
|
|
>> retourne **0,CarteMere**
|
|
|
|
|
>
|
|
|
|
@ -351,4 +351,4 @@
|
|
|
|
|
>
|
|
|
|
|
>**Fin si**
|
|
|
|
|
>
|
|
|
|
|
###FIN
|
|
|
|
|
### FIN
|
|
|
|
|