Erreur d'algorithme ou pas
hello,
Je reviens avec un bout de script (également présent dans un ensemble TK)
Le script prend tous les fichiers .JPG et test si il en manque dans la numérotation.
Code:
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
| my $premier = $entry_saisie1->get;
my $dernier = $entry_saisie2->get;
open OUT, ">$repertoire/Fichiers_Manquants.txt" or die;
open OUT2, ">$repertoire/Fichiers_presents.txt" or die;
opendir (my $FhRep, $repertoire) or die "impossible d'ouvrir le répertoire $repertoire\n";
my @Contenu = grep { /\.JPG/ } readdir($FhRep);
closedir ($FhRep);
@Contenu = sort @Contenu;
my $nb;
my @liste;
my @liste2;
my $total = $dernier - $premier;
$total = $total + 1;
foreach my $nom ( @Contenu ) {
$nom =~ /(\d\d?\d?\d?)\.\w{3}/;
$nb = $1;
push (@liste, $nb);
}
@liste = sort @liste;
while ( ! $total < 1 ) {
if ("@liste" !~ /$dernier/){
push (@liste2, $dernier);
}
$total--;
$dernier--;
}
print $total."\n";
@liste2 = sort @liste2;
print OUT "@liste2\n"; |
les tests que j'ai fait :
1) j'ai 6 fichiers .JPG : 1,2,3,10,11,15
en fichier manquant j'ai : 4, 6, 7, 8, 9, 12, 13, 14 ( et pas le 5 )
2) j'ai 6 fichier .JPG : 1, 2, 3, 10, 11, 16
en fichier manquant j'ai : 4, 5, 7, 8, 9, 12, 13, 14, 15 ( et pas le 6 )
donc il semble que le 15 soit traiter à la fois comme 15 et comme 5 pareille pour le 16...
:calim2:
Je ne comprend pas comment le résoudre. :roll: