SL 03OP1Y TD N° 7 : initiation à la programmation en Perl

Transcription

SL 03OP1Y TD N° 7 : initiation à la programmation en Perl
SL 03OP1Y
TD N° 7 : initiation à la programmation en Perl
Environnement de travail
Vous utiliserez l'éditeur Scintilla Text Editoir (ou SciTE) pour écrire et modifier vos programmes. Placez
systématiquement vos fichiers dans le dossier C:\SL03OP1\Programmes­Perl\
Pour exécuter un programme, ouvrez tout d'abord le terminal “Terminal Perl” dont le raccourci est sur le
bureau. Pour exécuter un programme dont le nom est par exemple “prog.pl”, tapez dans le terminal la
commande :
perl prog.pl
Si le programme est correct, il s'exécutera. S'il contient des erreurs, vous aurez en retour à cette commande
un message d'erreur (en anglais) indiquant grossièrement l'erreur et la ligne approximative où elle se trouve.
Dans ce cas, vous devrez corriger le code, enregistrer le fichier à nouveau, et relancer la commande cidessus. Ne fermez pas le terminal ni l'éditeur tant que vous n'avez pas terminé votre session de travail,
même si vous testez différents programmes.
Exercices
1/ Ouvrez le terminal Perl et tapez la commande :
perl bonjour.pl
Tapez votre nom comme indiqué, puis appuyez sur entrée. Observez le comportement du programme.
Recommencez en tapant une chaîne quelconque au lieu de votre nom.
2/ Ouvrez à l'aide de SciTE le fichier C:\SL03OP1\Programmes­Perl\bonjour.pl
Observez la structure du programme, et effectuez les modifications suivantes. Pour chaque modification,
enregistrez le fichier et relancez le programme afin de voir les modifications.
a) Changez tous les $nom en $name : le programme a-t-il un fonctionnement différent ?
b) Placez un caractère # au début de la dernière ligne de code : quel effet a ce caractère ? Effacez-le
avant de poursuivre.
c) Dans l'instruction d'affichage du premier message, ajoutez des espaces à la fois dans les
guillemets et en-dehors des guillemets : quelle différence voyez-vous à l'exécution ?
d) Faites en sorte que des retours à la ligne apparaissent à l'écran avant et après la saisie du nom de
l'utilisateur
e) N'utilisez qu'une seule instruction print pour afficher les messages à la fin du programme, sans
en modifier le résultat.
3/ Modifiez le programme “bonjour.pl” de telle façon qu'il demande à l'utilisateur son nom PUIS son
prénom (séparément et dans cet ordre), puis qu'il affiche un message du type :
Bonjour Prénom Nom.
4/ En vous inspirant du programme précédent, écrivez-en un nouveau (File/New dans SciTE), puis
enregistrez-le sous le nom “td7.pl” dans le dossier
C:\SL03OP1\Programmes­Perl\
Ce nouveau programme doit demander à l'utilisateur d'entrer un nom commun masculin singulier (par
exemple “lapin”) et doit afficher en retour le texte suivant (dans lequel “lapin” sera bien entendu remplacé
par le nom tapé par l'utilisateur du programme) :
Vous avez tapé le mot : lapin.
Au singulier, on dit : le lapin ou un lapin.
Au pluriel, on dit : les lapins ou des lapins.
5/ Modifiez le programme précédent de façon à afficher le texte suivant (i.e. avec des guillemets qui
apparaissent à l'écran) :
Vous avez tapé le mot: "lapin".
6/ Modifiez le programme précédent en ajoutant, une fois le nom entré par l'utilisateur, une ligne de code
permettant de construire le pluriel dans une variable $pluriel :
$pluriel = $nom . "s";
Affichez ensuite le contenu de $pluriel. : le programme doit fonctionner de la même façon.
7/ Traitez par substitution, sur la variable $pluriel, les exceptions suivantes : noms dont le singulier
finit par « s » ou « x », par « al » ou par « ail »
8/ Écrivez un programme “calcul.pl” qui demande à l'utilisateur de saisir deux nombres et en affiche la
somme, la différence et le produit.