PERL en pratique - TD Licence

par Anna ANDRYCH & Marie SADOU


Exercice n° 1 : Mon premier programme PERL

On dispose d'un texte :
#!/usr/local/bin/perl
# ce programme affiche "bonjour tout le monde"
print "bonjour tout le monde\n";

La première ligne #!/usr/local/bin/perl nous indique qu'il s'agit d'un programme PERL.

A télécharger : exercice n°1

Objectif : Modifier le programme et ajouter l'affichage du message : "Mon premier programme écrit avec PERL".

Résultat :

A télécharger : exercice n°1b

haut de la page



Exercice n° 2a : Création d'un programme avec des variables

Objectif : Ecrire un programme qui crée trois variables $var1, $var2 et $var3 auxquelles on affectera les valeurs 33, 44 et 55 respectivement. Ensuite afficher les valeurs de chaque variable en sortie. Puis créer une variable $somme dans laquelle on mettra la somme des valeurs de chaque variable : $var1 + $ var2, $var1 + $var3. Afficher la valeur de $somme et des variables utilisées pour produire cette somme.

Résultat :

A télécharger : exercice n°2a


Voici notre script en action :

haut de la page



Exercice n° 2b : Création d'un programme avec des variables

Objectif : Créer une variable $produit dans laquelle on mettra le produit des valeurs de chaque variable : même remarque que ci-dessus.

Résultat :

A télécharger : exercice n°2b


Voici notre script en action :

haut de la page



Exercice n° 2c : Création d'un programme avec des variables

Objectif : Permuter les valeurs de $var1, $var2 et $var3. C'est à dire que $var1 vaudra ce que valait $var2, $var2 ce que valait $var3, et $var3 ce que valait $var1. Astuce : créer une variable temporaire $tmp.

Résultat :

A télécharger : exercice n°2c


Voici notre script en action :

haut de la page



Exercice n° 3a : Parcours d'une liste

Récupérer le programme suivant :
#!/usr/bin/perl -w
@liste1 = (lundi mardi mercredi jeudi vendredi samedi dimanche);
print "affichage global :\n";
print @liste1,"\n";
print "@liste1\n";
print "taille de \@liste1 = (à compléter...) \n";
print "son dernier élément est : (à compléter...)\n";
print "affichage de \@liste1, élément par élément :\n";
print "\navec une boucle foreach :\n";
(à compléter...)

Objectif : Essayer de l'exécuter, si nécessaire corriger et compléter.

Résultat :

A télécharger : exercice n°3a


Voici notre script en action :

haut de la page



Exercice n° 3b : Manipulations de listes

Récupérer le programme suivant :
#!/usr/bin/perl -w
@alpha = ('a'..'z'); @liste = (@alpha,0..9);
$el = $liste[3];
print "$el\n";
($a, $b, $c, @reste) = @liste ;
print "\$a= $a, \$b= $b, \$c =$c , \@reste= @reste\n";
($b, $a)= ($a, $b);
print "\$a= $a, \$b= $b \n";
$el = pop @liste;
print "\$el= $el, \@liste= @liste\n";
$el = shift @liste;
print "\$el= $el, \@liste= @liste\n";
print "\@alpha est la liste \n@alpha\n";
for ($i=0; $i<26 ; $i++) {
$el= pop @alpha;
unshift @alpha, $el;
}
print "\@alpha est maintenant \n@alpha\n";

Objectif : Commenter les différentes instructions, et prévoir très précisément les affichages avant d'expérimenter.

Résultat :

A télécharger : exercice n°3b


Voici notre script en action :

haut de la page



Exercice n° 4 : Recherche de patrons syntaxiques

Objectif : Recherche de patrons syntaxiques autour de formes pôles dans le corpus Prématurés96 (p96.tag).
Vous choisirez cinq formes graphiques différentes. Vous construirez ensuite un programme perl qui prend en entrée le fichier catégorisé et un nombre donné. Ce nombre définira la longueur de la fenêtre de mots que vous souhaitez extraire autour de la forme pôle.

Résultat :

A télécharger : etape n°4 et le fichier HTML en sortie : etape4.html


Voici notre script en action :

haut de la page