Files
resatennis_tyroltenn/www/site_inscription/tctcer/tab/tab_ancien.reg

202 lines
5.3 KiB
Reg
Executable File

;TROUVER LE NB DE JOUEUR ENTRANT A CHAQUE TOUR;
;**********************************************************************;
REGLE CHANGER_TOUR_COURANT
;TROUVER A QUEL TOUR VA ETRE PLACER LE JOUEUR AUX ETAPES SUIVANTES;
SI
ETAPE_PLACEMENT_JOUEUR ' =0
TOUR_COURANT ' = (NO_X)
(TOUR_X) NUMERO (NO_X)
(TOUR_X) NB_JOUEUR_ENTRANT 0
ALORS
TOUR_COURANT ' <-- (TOUR_COURANT ' - 1)
;**********************************************************************;
REGLE MEME_TOUR_COURANT
DES_QUE
ETAPE_PLACEMENT_JOUEUR ' =0
TOUR_COURANT ' = (NO_X)
(TOUR_X) NUMERO (NO_X)
(NO_X) > 1
(TOUR_X) NB_JOUEUR_ENTRANT (NB_X)
(NB_X) > 0
ALORS
ETAPE_PLACEMENT_JOUEUR ' <-- 1
;**********************************************************************;
REGLE FIN_PLACEMENT_JOUEUR_PAR_TOUR
;DETERMINER QUAND ON A TERMINE LE PLACEMENTE DES JOUEURS PAR TOUR ET;
;DONC ON PEUT CREER LES MATCHS;
DES_QUE
ETAPE_PLACEMENT_JOUEUR ' =0
TOUR_COURANT ' =1
ALORS
ETAPE_PLACEMENT_JOUEUR ' <-- 3
;***********************************************************;
REGLE CLASSEMENT_MEILLEUR_PAS_PLACE_DANS_TOUR_BOUCLAGE
;TROUVER LE CLASSEMENT DU MEILLEUR JOUEUR PAS PLACE DANS LES DERNIERS TOURS;
QUAND
ETAPE_PLACEMENT_JOUEUR ' =1
(JOUEUR_X) ENTRE TOUR_1
(JOUEUR_X) EST_CLASSE (CLASSEMENT_X)
(CLASSEMENT_X) VAUT (X)
(X) < CLASSEMENT_MEILLEUR '
ALORS
CLASSEMENT_MEILLEUR ' <-- (X)
ETAPE_PLACEMENT_JOUEUR ' <-- 1
REGLE CLASSEMENT_MEILLEUR_PAS_PLACE_DANS_TOUR_SORTIE
SI
(JOUEUR_X) ENTRE TOUR_1
ETAPE_PLACEMENT_JOUEUR ' =1
ALORS
ETAPE_PLACEMENT_JOUEUR ' <-- 2
;**********************************************************;
REGLE MEILLEUR_JOUEUR_ENTRE_TOUR_N
;TROUVER LE MEILLEUR DES JOUEURS PAS PLACE DANS LES DERNIERS TOURS;
;AFFECTATION JOUEUR_ X ENTRE AU TOUR_X;
SI
ETAPE_PLACEMENT_JOUEUR ' =2
(JOUEUR_X) ENTRE TOUR_1
CLASSEMENT_MEILLEUR '=(CLASS_X)
(CLASSEMENT_X) VAUT (CLASS_X)
(JOUEUR_X) EST_CLASSE (CLASSEMENT_X)
TOUR_COURANT ' =(X)
(TOUR_X) NUMERO (X)
ALORS
ENTRE (JOUEUR_X) <-- (TOUR_X)
NB_JOUEUR_ENTRANT (TOUR_X) <-- ((NB_JOUEUR_ENTRANT (TOUR_X)) - 1 )
ETAPE_PLACEMENT_JOUEUR ' <-- 0
CLASSEMENT_MEILLEUR ' <-- 19
ECRIRE (ENVOI,(JOUEUR_X) " ENTRE " (TOUR_X))
;***************************************************************************;
;CALCUL DES MATCHS ;
;***************************************************************************;
REGLE MATCH_SUIVANT_TOUR_SUIVANT
;SI TOUS LES MATCH DU TOUR COURANT SONT PLACES, ON AVENCE D'UN TOUR;
DES_QUE
ETAPE_PLACEMENT_JOUEUR' =3
TOUR_COURANT ' =(NO_X)
(TOUR_X) NUMERO (NO_X)
(TOUR_X) NB_MATCH 0
(NO_X) < NB_TOUR'
ALORS
TOUR_COURANT ' <-- ((NO_X) + 1)
ETAPE_PLACEMENT_JOUEUR ' <-- 4
REGLE MATCH_SUIVANT_MEME_TOUR
;SINON, ON CONTINUE;
DES_QUE
ETAPE_PLACEMENT_JOUEUR' =3
TOUR_COURANT ' =(NO_X)
(TOUR_X) NUMERO (NO_X)
(TOUR_X) NB_MATCH (NB_X)
(NB_X) > 0
ALORS
ETAPE_PLACEMENT_JOUEUR ' <-- 4
;***************************************************************************;
REGLE CLASSEMENT_MEILLEUR_PAS_PLACE_DANS_MATCH_BOUCLAGE
;TROUVER LE CLASSEMENT DU MEILLEUR JOUEUR ;
;DU TOUR COURANT ET QUI NE JOUE PAS;
QUAND
ETAPE_PLACEMENT_JOUEUR ' = 4
TOUR_COURANT ' = (NO_X)
(TOUR_X) NUMERO (NO_X)
(JOUEUR_X) JOUE PAS_D_ADVERSAIRE
(JOUEUR_X) ENTRE (TOUR_X)
(JOUEUR_X) EST_CLASSE (CLASSEMENT_X)
(CLASSEMENT_X) VAUT (X)
(X) < CLASSEMENT_MEILLEUR '
ALORS
CLASSEMENT_MEILLEUR ' <-- (X)
ETAPE_PLACEMENT_JOUEUR ' <-- 4
REGLE CLASSEMENT_MEILLEUR_PAS_PLACE_DANS_MATCH_SORTIE
SI
ETAPE_PLACEMENT_JOUEUR ' = 4
TOUR_COURANT ' = (NO_X)
(TOUR_X) NUMERO (NO_X)
(JOUEUR_X) JOUE PAS_D_ADVERSAIRE
(JOUEUR_X) ENTRE (TOUR_X)
ALORS
ETAPE_PLACEMENT_JOUEUR ' <-- 5
;***************************************************************************;
REGLE CLASSEMENT_MOINS_BON_PAS_PLACE_DANS_MATCH_BOUCLAGE
;TROUVER LE CLASSEMENT DU MOINS BON JOUEUR ;
;DU TOUR COURANT ET QUI NE JOUE PAS;
QUAND
ETAPE_PLACEMENT_JOUEUR ' = 5
TOUR_COURANT ' = (NO_X)
(TOUR_X) NUMERO (NO_X)
(JOUEUR_X) JOUE PAS_D_ADVERSAIRE
(JOUEUR_X) ENTRE (TOUR_X)
(JOUEUR_X) EST_CLASSE (CLASSEMENT_X)
(CLASSEMENT_X) VAUT (X)
(X) > CLASSEMENT_MOINS_BON '
ALORS
CLASSEMENT_MOINS_BON ' <-- (X)
REGLE CLASSEMENT_MOINS_BON_PAS_PLACE_DANS_MATCH_SORTIE
SI
ETAPE_PLACEMENT_JOUEUR ' = 5
TOUR_COURANT ' = (NO_X)
(TOUR_X) NUMERO (NO_X)
(JOUEUR_X) JOUE PAS_D_ADVERSAIRE
(JOUEUR_X) ENTRE (TOUR_X)
ALORS
ETAPE_PLACEMENT_JOUEUR ' <-- 6
;***************************************************************************;
REGLE CREATION_MATCH
;CREATION DES MATCHS ENTRE LES MEILLEURS ;
;JOUEUR DU TOUR RESTANT ET LES MOINS BONS;
SI
ETAPE_PLACEMENT_JOUEUR ' = 6
TOUR_COURANT ' = (NO_X)
(TOUR_X) NUMERO (NO_X)
(JOUEUR_X) JOUE PAS_D_ADVERSAIRE
(JOUEUR_Y) JOUE PAS_D_ADVERSAIRE
(JOUEUR_X) ENTRE (TOUR_X)
(JOUEUR_Y) ENTRE (TOUR_X)
(JOUEUR_X) <> (JOUEUR_Y)
(JOUEUR_X) EST_CLASSE (CLASSEMENT_X)
(CLASSEMENT_X) VAUT (CLASS_X)
CLASSEMENT_MEILLEUR ' = (CLASS_X)
(JOUEUR_Y) EST_CLASSE (CLASSEMENT_Y)
(CLASSEMENT_Y) VAUT (CLASS_Y)
CLASSEMENT_MOINS_BON ' = (CLASS_Y)
ALORS
JOUE (JOUEUR_X) <-- (JOUEUR_Y)
JOUE (JOUEUR_Y) <-- (JOUEUR_X)
NB_MATCH (TOUR_X) <-- ((NB_MATCH (TOUR_X)) - 1)
ECRIRE (ENVOI,(JOUEUR_X) " JOUE " (JOUEUR_Y))
;NB_JOUEUR_ENTRANT (TOUR_X) <-- ((NB_JOUEUR_ENTRANT (TOUR_X)) - 1 );
;***************************************************************************;
REGLE MATCH_SUIVANT
SI
ETAPE_PLACEMENT_JOUEUR ' = 6
(JOUEUR_X) JOUE PAS_D_ADVERSAIRE
(JOUEUR_Y) JOUE PAS_D_ADVERSAIRE
(JOUEUR_X) <> (JOUEUR_Y)
ALORS
ETAPE_PLACEMENT_JOUEUR ' <-- 3
CLASSEMENT_MOINS_BON ' <-- 0
CLASSEMENT_MEILLEUR ' <-- 19