Partie 2 - Etape1 - Exercice 3


Entrées-sorties console
* Les accès aux fichiers s'effectuent habituellement par l'intermédiaire de variables particulières appelées filehandles, en français descripteurs de fichiers.
    * Perl dote chaque programme exécuté de 3 descripteurs prédéfinis, STDIN, STDOUT et STDERR (reprise des canaux standard d'Unix : entrée clavier, sortie écran, sortie en erreur) qui sont immédiatement utilisables sans déclaration, contrairement aux accès à des fichiers réels.

    * L'opérateur de lecture sur l'entrée standard (le clavier) est noté <STDIN>, souvent abrégé en <>
      Un appel à cet opérateur lit la ligne saisie jusqu'au prochain caractère "nouvelle ligne" (y compris)
    * L'instruction chomp $var permet de retirer ce caractère \n de la chaine et renvoie 1 s'il réussit
      Ne pas la confondre avec chop $var qui retire le dernier caractère quel qu'il soit et le renvoie.
    * La sortie standard sur l'écran, est noté <STDOUT>. L'écriture, ici l'affichage écran, s'effectue avec print, sous la syntaxe générale : print STDOUT $texte; qu'il est agréable d'abréger en : print $texte

   1. Le code est-il correct ? Commenter l'exécution ensuite
   2. Corriger si nécessaire
   3. Compléter le dialogue en demandant l'age

---------------------------------------------
#!/usr/bin/perl -w
# erreur de syntaxe classique : ne pas mettre de virgule après le filehandle
print STDOUT "Quel est ton prénom ? ";
$prenom = <STDIN>;
print "Bonjour $prenom, comment vas-tu ? \n";

Script :  Cliquez ici  

Commande: 

Résultat:         

   1. Le code est-il correct ? 

Commentaires : Le code est correcte mais on peut corriger deux choses.


   2. Corriger si nécessaire

Script :  Cliquez ici  

Commande: 

Résultat:          

Commentaires :  Le STDOUT est superflux car c'est la sortie par défaut donc on peut ne pas l'écrire.
Il faut enlever le retour-chariot qui est pris en compte par le STDIN
.

   3. Compléter le dialogue en demandant l'age

Script :  Cliquez ici  

Commande: 

Résultat: