#!perl -w #pour le DOS de Windows
#!/usr/bin/perl -w #pour Unix-like (Linux)
# remd: utilisation de redo pour rectifier des erreurs de frappe utilisateur.
# alain adelmar <aadelmar@free.fr>
$i = 0;
$lb_date;
%jr2sem = qw(dimanche sunday lundi monday mardi tuesday mercredi wednesday jeudi thursday vendredi friday samedi saturday);
@jnum = (1..31);
%moi2an = ("janvier", "january", "février", "february", "mars" , "march", "avril", "april", "mai", "may", "juin", "june", "juillet", "jully", "aout", "august", "septembre", "september", "octobre", "october", "novembre", "november", "decembre", "december");
while ($i < 3) {
print "entrez une date: (ex: vendredi 29 juin)\n";
$lb_date = <STDIN>;
chomp $lb_date;
@_ = split(/ /, $lb_date);
if ($_[$i] != $jr2sem{keys}) {
print "vous avez mal ortographier le jour $!";
redo;
}
if ($_[$i] > @jnum || /^0/) {
print "numero de jour hors limite\n";
redo;
}
$i++;
if ($_[$i] != $moi2an{keys}) {
print "orthographe du mois est incorrecte\n";
redo;
}
$i++;
}
$day2week = $jr2sem{$_[0]};
$numjr = $_[1];
$month2year = $moi2an{$_[2]};
print "la date française: $lb_date s\'écrit $day2week\, $month2year $numjr\n";
# on peut ce servir de ces hashages, alain
END;