ArbreBinaire

Commande de compilation...
Commande d'exécution...
Fichier source...

upscmp Source=arbre.upl

Revenir en haut de la page...

arbre

Revenir en haut de la page...

Source Composant "Exemple d'emploi du type ArbreBinaire" Version 1.0.0;

Fonction F(O1 : Nul Ou Caractere, O2 : Nul Ou Caractere) Retourner ComparaisonObjet
/*****************************************************************************/
Debut
Si O1==Nul Ou O2==Nul Alors Fin Si
Si O1 < O2 Alors Fin Si
Si O1 > O2 Alors Fin Si
Retourner ComparaisonEgal;
Fin Fonction

Procedure EcrireArbre(A : Nul Ou ArbreBinaireDe Nul Ou Caractere)
/*************************************************************/
Variable Debut
Pour C=A.ParcoursAuDebut() JusquA A.DernierElement() Pas A.Suivant() Faire Fin Pour
Fin Procedure

Procedure EcrireArbre2(A : Nul Ou ArbreBinaireDe Nul Ou Caractere)
/**************************************************************/
Variable Debut
Pour C=A.ParcoursALaFin() JusquA A.PremierElement() Pas A.Precedent() Faire Fin Pour
Fin Procedure

Procedure EcrireArbre3(A : Nul Ou ArbreBinaireDe Nul Ou Caractere)
/**************************************************************/
Variable Debut
Pour C=A.ParcoursAuDebut() JusquA A.DernierElement() Pas A.SuivantGroupe() Faire Fin Pour
Fin Procedure

Procedure EcrireArbre4(A : Nul Ou ArbreBinaireDe Nul Ou Caractere)
/**************************************************************/
Variable Debut
Pour C=A.ParcoursALaFin() JusquA A.PremierElement() Pas A.PrecedentGroupe() Faire Fin Pour
Fin Procedure

Procedure EcrireArbre5(A : Nul Ou ArbreBinaireDe Nul Ou Caractere)
/**************************************************************/
Variable Debut
Pour C=A.ParcoursAuDebut() JusquA A.DernierElement() Pas A.SuivantGroupe() Faire Fin Pour
Fin Procedure

Principal Optimiser(NePasFactoriserChaine)
/****************************************/
Variable Debut
Coucou="coucou";
Bonjour="bonjour";
Salut="salut";
Schluss="schluss";
A1=ArbreBinaireDe(F, Faux);
A1+=Bonjour;
A1+="hello";
A1+="guten tag";
A1+="hello";
A1+="coucou";
A1+=Coucou;
A1+=Salut;
A1+="hie";
A1+=Schluss;
EcrireArbre(A1);
Ecran.Ecrire("\n");
EcrireArbre2(A1);
Ecran.Ecrire("\n");
EcrireArbre3(A1);
Ecran.Ecrire("\n");
EcrireArbre4(A1);
Ecran.Ecrire("\n");

A2=ArbreBinaireDe(F, Faux);
A2+=Schluss;
A2+="hie";
A2+=Salut;
A2+=Coucou;
A2+="bonjour";
A2+="hello";
A2+="guten tag";
A2+="hello";
A2+=Bonjour;
EcrireArbre5(A2);
Ecran.Ecrire("\n");

Si A1==A2 Alors Fin Si
Si A1!=A2 Alors Fin Si
Ecran.Ecrire(A1.PremierElement());
Ecran.Ecrire(A1.DernierElement());
Ecran.Ecrire(A1.NbElements);
Ecran.Ecrire(A1.NbGroupes);
Ecran.Ecrire("\n");

Ecran.Ecrire(A1.Compter(Bonjour));
Ecran.Ecrire("\n");
A2=A2.SupprimerTous(Schluss);
EcrireArbre(A2);
Ecran.Ecrire("\n");
A2=A2.RemplacerTous(Bonjour, "hola");
EcrireArbre(A2);
Ecran.Ecrire("\n");

A2=A1.Gauche(Coucou);
EcrireArbre(A2);
Ecran.Ecrire("\n");
A2=A1.Gauche(Salut);
EcrireArbre(A2);
Ecran.Ecrire("\n");
A2=A1.Droite(Coucou);
EcrireArbre(A2);
Ecran.Ecrire("\n");
A2=A1.Droite(Salut);
EcrireArbre(A2);
Ecran.Ecrire("\n");
A2=A1.Milieu(Coucou,Salut);
EcrireArbre(A2);
Ecran.Ecrire("\n");

A2=A1;
EcrireArbre(A2);
Ecran.Ecrire("\n");
Pour I=0 JusquA A1.NbElements-1 Faire Fin Pour
Ecran.Ecrire("\n");
LibelleA="A";
LibelleB="B";
LibelleC="C";
LibelleD="D";
LibelleE="E";
LibelleF="F";
A1=ArbreBinaireDe(F, Faux);
A1+=LibelleA;
A1+=LibelleB;
A1+=LibelleC;
A1+=LibelleD;
A2=ArbreBinaireDe(F, Faux);
A2+=LibelleC;
A2+=LibelleD;
A2+=LibelleE;
A2+=LibelleF;
A3=A1.Union(A2);
EcrireArbre(A3);
Ecran.Ecrire("\n");
A3=A1.Intersection(A2);
EcrireArbre(A3);
Ecran.Ecrire("\n");
A3=A1.Soustraction(A2);
EcrireArbre(A3);
Ecran.Ecrire("\n");
A3=A1.Exclusion(A2);
EcrireArbre(A3);
Ecran.Ecrire("\n");
Fin Principal

Revenir en haut de la page...