1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| #!/usr/bin/perl
use warnings;
use strict;
use utf8;
my ( $J, $H, $M) = 0;
if($#ARGV!=1) {
print "Erreur argument non valide->heure:minute heure:minute\n";
exit 1;
}
my ($heure1,$minute1)=split(":",$ARGV[0]);
my ($heure2,$minute2)=split(":",$ARGV[1]);
if ($heure1<0 || $heure1>99) {
print "heure1 invalide\n";
exit 1;
}
if ($heure2<0 || $heure2>99) {
print "heure2 invalide\n";
exit 1;
}
if ($minute1<0 || $minute1 >59) {
print "minute1 invalide\n";
exit 1;
}
if ($minute2<0 || $minute2 >59) {
print "minute2 invalide\n";
exit 1;
}
$H = $heure1 + $heure2;
$M = $minute1 + $minute2;
print "\n$H:$M\n\n";
if ( $H >= 24 ) {
$J = int ( $H / 24 );
$H = $H % 24;
if ( $M >= 60 ){
$H = $H + int ($M /60);
$M = $M % 60;
} else {
if ( $M >= 60 ){
$H = $H + int ($M /60);
$M = $M % 60;
}
}
printf ('%d jour(s) %d:%02d', $J, $H, $M);
} else {
if ( $M >= 60 ){
$H = $H + int ($M /60);
$M = $M % 60;
} else {
if ( $M >= 60 ){
$H = $H + int ($M /60);
$M = $M % 60;
}
}
printf ('%d:%02d', $H, $M);
}
exit 0; |
Partager