# ANALYSE DE CARTE# ## COMPARAISON DE CARTE## **ComparaisonDeCarte(TasDeCarte:Tableau(4,3) d'entiers, Carte:Tableau(4,3) d'entiers)** : entier **Entrées** : **TasDeCarte** et **Carte** :Tableau(4,3) d'entiers **Sortie** : entier ### DEBUT### > ###Variables locales : > **Cox1,Cox2,Coy1,Coy2** : entiers > > --- > > Si TasDeCarte == NULL alors > >> Code <- 2 > >> retour Code > >Fin Si > Cox1,Coy1,Cox2,Coy2 <- rechercheCo(Carte) > > Code <- 0 > > Si TasDeCarte(Coy1,Cox1) == 3 ou TasDeCarte(Coy2,Cox2) == 3 alors > >>retour Code > >Fin si > >Si TasDeCarte(Coy1,Cox1) == 1 ou TasDeCarte(Coy2,Cox2) == 2 alors > >>Code <- 1 > >Fin si >Si TasDeCarte(Coy1,Cox1) == 1 et TasDeCarte(Coy2,Cox2) == 2 alors > >>Code <- 2 > >Fin Si > >retour Code ###FIN ##COMPARAISON TOTAL DE LA CARTE **ComparaisonTotal(TasDeCarte:Tableau(4,3) d'entiers,CarteFille:Tableau(4,3) d'entiers, index entier)**:entier,Tableau(4,3) d'entiers **Entrees** : **TasDeCarte,CarteFille** :Tableau(4,3) d'entiers, **index** entier **Sortie** : entier ###DEBUT >###Variables locales > > Code,Code1 entier > >--- > >Si TasDeCarte == NULL alors > >>TasDeCarte <- CarteFille > >>Code <- 1 > >>retour Code,TasDeCarte > >Fin si > > > **Si** index == 1 alors > >>CarteFille <- rotationVerticale(CarteFille) > >**Fin Si** > >**Si** index == 2 alors > >>CarteFille <- rotationHorizontale(CarteFille) > >**Fin Si** > >**Si** index == 3 alors > >>CarteFille <- rotationVerticale(CarteFille) > >**Fin Si** > >**Si** index == 4 alors > >>Code <- -1 > >>retour Code,TasDeCarte > >**Fin Si** > >Code <- ComparaisonDeCarte(TasDeCarte,CarteFille) > >**Si** Code == 2 alors > >>TasDeCarte <- TasDeCarte + CarteFille > >>retour Code,TasDeCarte > >**Fin si** > >**Si** Code == 1 alors > >>Code1 <- ComparaisonDeCarte(TasDeCarte,rotationHorizontale(CarteFille)) > >>**Si **Code1 == 1 alors > >>>Code <- 4 > >>> retour Code, TasDeCarte > >>**Fin Si** > >>Code1 <- ComparaisonDeCarte(TasDeCarte,rotationVerticale(CarteFille)) > >>**Si **Code1 == 2 alors > >>>Code <- 2; > >>> TasDeCarte <- TasDeCarte + rotationVerticale(CarteFille) > >>>retour Code, TasDeCarte > >>**Fin Si** > >> **Si** Code1 == 1 alors > >>> Code <- 3 > >>> retour Code,TasDeCarte > >>**Fin Si** > >**Fin si** > >**Si** Code == 0 alors > >> retour ComparaisonTotal(TasDeCarte,CarteFille,index + 1) > >**Fin si** > ### FIN