2010-12-15 3 views
1

J'ai une série de nombres (dans un fichier texte) de 90 000 à 1 000 000 qui correspondent aux fichiers qui me manquent. Je voudrais prendre cet ensemble et marquer ces fichiers comme "1" comme une deuxième colonne à côté d'une série complète de nombres de 90 000 à 1 000 000. Par exemple pour la série 1to13 (qui correspondrait aux « manquants » des fichiers):Utiliser le script Perl pour remplir des valeurs dans l'ensemble de données

3 
7 
10 
12

Je voudrais créer un ensemble de données:

1 0 
2 0 
3 1 
4 0 
5 0 
6 0 
7 1 
8 0 
9 0 
10 1 
11 0 
12 1 
13 0

Je voudrais être en mesure d'exécuter ceci dans perl.

Répondre

3

En supposant qu'ils sont triés:

use strict; 
use warnings; 

my $last = 89999; 
while (my $next = <>) { 
    chomp($next); 
    print $last, " 0\n" while ++$last < $next; 
    print "$next 1\n"; 
} 
print $last, " 0\n" while ++$last <= 1000000; 
+0

Impressionnant. Merci! – Jake

Questions connexes