Files
resatennis_tyroltenn/www/site_inscription/cer/tab/tab.reg

213 lines
7.2 KiB
Reg
Executable File

; *************************************************** ;
; Méthode Tableau départ en ligne ;
; Si des qualifies entre dans le tableau ;
; Debut de creation des couples ;
; *************************************************** ;
REGLE QUALIF_ENTRANTS_NPNE_T1
SI
METHODE_TABLEAU ' = DEPART_EN_LIGNE
(E1) ' = QUALIFIE
(E1) ENTRE TOUR_1
(E1) PLACE COUPLE ' INEXISTANT
(E1) EST_CLASSE (CLASS_QUAL)
(CLASS_QUAL) VAUT (X)
NB_JOUEURS_QUALIFIES_ENTRANTS ' > 0
CLASSEMENT_MOINS_BON ' = (CLASS_MB)
(CLASS_MB) < (X)
(CLASS_JOUEUR) VAUT (CLASS_MB)
(CLASS_JOUEUR) NOMBRE_JOUEURS (NB_JOUEURS)
(E2) ' = JOUEUR
(E2) ENTRE TOUR_1
(E1) <> (E2)
(E2) PLACE COUPLE ' INEXISTANT
(E2) EST_CLASSE (CLASS_JOUEUR)
(E2) JOUE_MATCH (E1) ' INEXISTANT
(E1) JOUE_MATCH (E2) ' INEXISTANT
NPNE ' > 0
(NB_JOUEURS) > 0
ALORS
((E1) JOUE_MATCH (E2)) VAINQUEUR IMPLODE ("VAINQUEUR_1_", NPNE')
ECRIRE(ENVOI, (E1)" JOUE_MATCH "(E2)" VAINQUEUR "IMPLODE ("VAINQUEUR_1_", NPNE'))
(CLASS_JOUEUR) NOMBRE_JOUEURS (NB_JOUEURS) ' INEXISTANT
(CLASS_JOUEUR) NOMBRE_JOUEURS ((NB_JOUEURS) - 1) ; Enleve 2 joueurs du classement ;
NB_JOUEURS_QUALIFIES_ENTRANTS ' <-- (NB_JOUEURS_QUALIFIES_ENTRANTS ' - 1)
NPNE ' <-- (NPNE ' - 1)
(E1) PLACE COUPLE ' VRAI
(E2) PLACE COUPLE ' VRAI
; *************************************************** ;
; Méthode Tableau départ en ligne ;
; Si des qualifies entre dans le tableau (exempts) ;
; Fin de creation des couples ;
; *************************************************** ;
REGLE QUALIF_ENTRANTS_EXEMPTS_T1
SI
METHODE_TABLEAU ' = DEPART_EN_LIGNE
(E1) ' = QUALIFIE
(E1) ENTRE TOUR_1
(E1) PLACE COUPLE ' INEXISTANT
(E1) EST_CLASSE (CLASS_QUAL)
(CLASS_QUAL) VAUT (X)
NB_JOUEURS_QUALIFIES_ENTRANTS ' > 0
CLASSEMENT_MOINS_BON ' = (CLASS_MB)
(CLASS_JOUEUR) VAUT (CLASS_MB)
(CLASS_JOUEUR) NOMBRE_JOUEURS (NB_JOUEURS)
(E2) ' = JOUEUR
(E2) ENTRE TOUR_1
(E1) <> (E2)
(E2) PLACE COUPLE ' INEXISTANT
(E2) EST_CLASSE (CLASS_JOUEUR)
(CLASS_MB) < (X)
(E2) JOUE_MATCH (E1) ' INEXISTANT
(E1) JOUE_MATCH (E2) ' INEXISTANT
NPNE ' = 0
(NB_JOUEURS) > 0
TETES_SERIE ' > 0
ALORS
((E1) JOUE_MATCH (E2)) VAINQUEUR IMPLODE ("VAINQUEUR_1_", TETES_SERIE')
ECRIRE(ENVOI, (E1)" JOUE_MATCH "(E2)" VAINQUEUR "IMPLODE ("VAINQUEUR_1_", TETES_SERIE'))
(CLASS_JOUEUR) NOMBRE_JOUEURS (NB_JOUEURS) ' INEXISTANT
(CLASS_JOUEUR) NOMBRE_JOUEURS ((NB_JOUEURS) - 1) ; Enleve 2 joueurs du classement ;
NB_JOUEURS_QUALIFIES_ENTRANTS ' <-- (NB_JOUEURS_QUALIFIES_ENTRANTS ' - 1)
TETES_SERIE ' <-- (TETES_SERIE ' - 1)
(E1) PLACE COUPLE ' VRAI
(E2) PLACE COUPLE ' VRAI
; *************************************************** ;
; Méthode Tableau départ en ligne ;
; Calcul des matchs de prétour (tour 1) ;
; Debut de creation des couples ;
; *************************************************** ;
REGLE CREER_MATCH_NPNE
SI
NB_JOUEURS_QUALIFIES_ENTRANTS ' = 0
CLASSEMENT_MOINS_BON ' = (X)
(D) VAUT (X)
(D) NOMBRE_JOUEURS (NB_JOUEURS)
METHODE_TABLEAU ' = DEPART_EN_LIGNE
(E1) ' = JOUEUR
(E1) EST_CLASSE (D)
(E1) ENTRE TOUR_1
(E1) PLACE COUPLE ' INEXISTANT
(E2) ' = JOUEUR
(E2) ENTRE TOUR_1
(E1) <> (E2)
(E2) PLACE COUPLE ' INEXISTANT
(E2) EST_CLASSE (D)
(E2) JOUE_MATCH (E1) ' INEXISTANT
(E1) JOUE_MATCH (E2) ' INEXISTANT
NPNE ' > 0
(NB_JOUEURS) > 0
ALORS
((E1) JOUE_MATCH (E2)) VAINQUEUR IMPLODE ("VAINQUEUR_1_", NPNE')
ECRIRE(ENVOI, (E1)" JOUE_MATCH "(E2)" VAINQUEUR "IMPLODE ("VAINQUEUR_1_", NPNE'))
(D) NOMBRE_JOUEURS (NB_JOUEURS) ' INEXISTANT
(D) NOMBRE_JOUEURS ((NB_JOUEURS) - 2) ; Enleve 2 joueurs du classement ;
NPNE ' <-- (NPNE ' - 1)
(E1) PLACE COUPLE ' VRAI
(E2) PLACE COUPLE ' VRAI
; *************************************************** ;
; Méthode Tableau départ en ligne ;
; Calcul du reste des matchs du tour 1 ;
; Fin de creation des couples ;
; *************************************************** ;
REGLE CREER_MATCH_T1_EXEMPT
SI
NB_JOUEURS_QUALIFIES_ENTRANTS ' = 0
CLASSEMENT_MOINS_BON ' = (X)
(D) VAUT (X)
(D) NOMBRE_JOUEURS (NB_JOUEURS)
METHODE_TABLEAU ' = DEPART_EN_LIGNE
(E1) ' = JOUEUR
(E1) EST_CLASSE (D)
(E1) ENTRE TOUR_1
(E1) PLACE COUPLE ' INEXISTANT
(E2) ' = JOUEUR
(E2) ENTRE TOUR_1
(E1) <> (E2)
(E2) PLACE COUPLE ' INEXISTANT
(E2) EST_CLASSE (D)
(E2) JOUE_MATCH (E1) ' INEXISTANT
(E1) JOUE_MATCH (E2) ' INEXISTANT
NPNE ' = 0
TETES_SERIE ' > 0
(NB_JOUEURS) > 0
ALORS
((E1) JOUE_MATCH (E2)) VAINQUEUR IMPLODE ("VAINQUEUR_2_", TETES_SERIE ')
ECRIRE(ENVOI, (E1)" JOUE_MATCH "(E2)" VAINQUEUR "IMPLODE ("VAINQUEUR_2_", TETES_SERIE'))
(D) NOMBRE_JOUEURS (NB_JOUEURS) ' INEXISTANT
(D) NOMBRE_JOUEURS ((NB_JOUEURS) - 2) ; Enleve 2 joueurs du classement ;
TETES_SERIE ' <-- (TETES_SERIE ' - 1)
(E1) PLACE COUPLE ' VRAI
(E2) PLACE COUPLE ' VRAI
; *********************************************** ;
; Méthode Tableau départ en ligne ;
; Calcul des mactsh ayant lieu au tour 2 ;
; *********************************************** ;
REGLE CREER_MATCH_T2
SI
METHODE_TABLEAU ' = DEPART_EN_LIGNE
(E1) VAINQUEUR (X)
(X) ' = VAINQUEUR
(X) ENTRE TOUR_2
(X) PLACE COUPLE ' INEXISTANT
(E2) ' = JOUEUR
(E2) ENTRE TOUR_2
(X) <> (E2)
(E2) PLACE COUPLE ' INEXISTANT
(E2) EST_CLASSE (D)
(E2) JOUE_MATCH (X) ' INEXISTANT
(X) JOUE_MATCH (E2) ' INEXISTANT
TETES_SERIE ' > 0
ALORS
((X) JOUE_MATCH (E2)) VAINQUEUR IMPLODE ("VAINQUEUR_2_", TETES_SERIE ')
ECRIRE(ENVOI, (X)" JOUE_MATCH "(E2)" VAINQUEUR "IMPLODE ("VAINQUEUR_2_", TETES_SERIE'))
IMPLODE ("VAINQUEUR_2_", TETES_SERIE') ENTRE TOUR_QUALIF
TETES_SERIE ' <-- (TETES_SERIE ' - 1 )
(X) PLACE COUPLE ' VRAI
(E2) PLACE COUPLE ' VRAI
; *********************************************** ;
; Méthode Tableau départ en ligne ;
; Calcul des matchs ayant lieu au tour qualif ;
; *********************************************** ;
REGLE CREER_MATCH_TOUR_QUALIF
SI
METHODE_TABLEAU ' = DEPART_EN_LIGNE
(E1) VAINQUEUR (X)
(X) ' = VAINQUEUR
(X) ENTRE TOUR_QUALIF
(X) PLACE COUPLE ' INEXISTANT
(E2) VAINQUEUR (Y)
(Y) ' = VAINQUEUR
(Y) ENTRE TOUR_QUALIF
(Y) PLACE COUPLE ' INEXISTANT
(X) <> (Y)
(Y) JOUE_MATCH (X) ' INEXISTANT
(X) JOUE_MATCH (Y) ' INEXISTANT
NB_QUALIFIES_SORTANTS ' > 0
ALORS
((X) JOUE_MATCH (Y)) VAINQUEUR IMPLODE ("VAINQUEUR_", NB_QUALIFIES_SORTANTS')
ECRIRE(ENVOI, (X)" JOUE_MATCH "(Y)" VAINQUEUR "IMPLODE ("VAINQUEUR_Q_", NB_QUALIFIES_SORTANTS'))
NB_QUALIFIES_SORTANTS ' <-- (NB_QUALIFIES_SORTANTS ' - 1 )
(X) PLACE COUPLE ' VRAI
(Y) PLACE COUPLE ' VRAI
; *************************************************** ;
; Méthode Tableau départ en ligne ;
; Si plus de joueurs dans les classements moins bons ;
; *************************************************** ;
REGLE PLUS_JOUEURS_CLASS_MOINS_BON
SI
METHODE_TABLEAU ' = DEPART_EN_LIGNE
CLASSEMENT_MOINS_BON ' = (CLASS_MB)
(CLASS_MOINSBON) VAUT (CLASS_MB)
(CLASS_MOINSBON) NOMBRE_JOUEURS 0
ALORS
CLASSEMENT_MOINS_BON ' <-- ((CLASS_MB) - 1)