Le fichier source est ${UPS_HOME}/upssdk/demo/${UPS_LANGUAGE}/optimiser.upl.
upscmp Source=optimiser.upl
optimiser
upssng Source=optimiser.upl
Source Composant "Exemple de l'emploi de l'optimisation de code" Version 4.0.0;
Procedure Optimiser(FactoriserChaine, FactoriserCode) MaProcedure1()
/******************************************************************/
Variable
/******/
I : Entier;
J : Entier;
A : Caractere;
B : Caractere;
C : Caractere;
D : Caractere;
Debut
A="A";
B="B";
Ecran.Ecrire("MaProcedure1()");
Pour I=1 JusquA 3 Faire
Ecran.Ecrire("I="+Caractere(I, "#"));
Ecran.Ecrire("---");
Pour J=I+10 JusquA I+10+3 Faire
Ecran.Ecrire("J="+Caractere(J, "#"));
D="D="+B+A+";";
Fin Pour
C="C="+A+B+";";
Ecran.Ecrire(");
Fin Pour
Ecran.Ecrire(C);
Ecran.Ecrire(D);
Ecran.Ecrire(");
Fin Procedure
Procedure Optimiser(NePasFactoriserChaine, FactoriserCode) MaProcedure2()
/***********************************************************************/
Variable
/******/
I : Entier;
J : Entier;
A : Caractere;
B : Caractere;
C : Caractere;
D : Caractere;
Debut
A="A";
B="B";
Ecran.Ecrire("MaProcedure2()");
Pour I=1 JusquA 3 Faire
Ecran.Ecrire("I="+Caractere(I, "#"));
Ecran.Ecrire("---");
Pour J=I+10 JusquA I+10+3 Faire
Ecran.Ecrire("J="+Caractere(J, "#"));
D="D="+B+A+";";
Fin Pour
C="C="+A+B+";";
Ecran.Ecrire(");
Fin Pour
Ecran.Ecrire(C);
Ecran.Ecrire(D);
Ecran.Ecrire(");
Fin Procedure
Procedure Optimiser(FactoriserChaine, NePasFactoriserCode) MaProcedure3()
/***********************************************************************/
Variable
/******/
I : Entier;
J : Entier;
A : Caractere;
B : Caractere;
C : Caractere;
D : Caractere;
Debut
A="A";
B="B";
Ecran.Ecrire("MaProcedure3()");
Pour I=1 JusquA 3 Faire
Ecran.Ecrire("I="+Caractere(I, "#"));
Ecran.Ecrire("---");
Pour J=I+10 JusquA I+10+3 Faire
Ecran.Ecrire("J="+Caractere(J, "#"));
D="D="+B+A+";";
Fin Pour
C="C="+A+B+";";
Ecran.Ecrire(");
Fin Pour
Ecran.Ecrire(C);
Ecran.Ecrire(D);
Ecran.Ecrire(");
Fin Procedure
Procedure Optimiser(NePasFactoriserChaine, NePasFactoriserCode) MaProcedure4()
/****************************************************************************/
Variable
/******/
I : Entier;
J : Entier;
A : Caractere;
B : Caractere;
C : Caractere;
D : Caractere;
Debut
A="A";
B="B";
Ecran.Ecrire("MaProcedure4()");
Pour I=1 JusquA 3 Faire
Ecran.Ecrire("I="+Caractere(I, "#"));
Ecran.Ecrire("---");
Pour J=I+10 JusquA I+10+3 Faire
Ecran.Ecrire("J="+Caractere(J, "#"));
D="D="+B+A+";";
Fin Pour
C="C="+A+B+";";
Ecran.Ecrire(");
Fin Pour
Ecran.Ecrire(C);
Ecran.Ecrire(D);
Ecran.Ecrire(");
Fin Procedure
Principal
/*******/
Debut
MaProcedure1();
MaProcedure2();
MaProcedure3();
MaProcedure4();
Fin Principal