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 64
| push @namememories,$name_memories{$namememories}{namememories};
push @coordonneesX ,$name_memories{$namememories}{coordonnesmemoriesX};
push @coordonneesY ,$name_memories{$namememories}{coordonnesmemoriesY};
push @consumptionmemories,$name_memories{$namememories}{consumptionmemories};
push @nbadresses,$name_memories{$namememories}{nbadresses};
push @taillemot,$name_memories{$namememories}{taillemot};
push @duree,$name_memories{$namememories}{duree};
}
for my $i ( 0 .. @namememories-1 ) {
$p=0;
if ($i == $p){next;}
$conso_ajoutee[$i]=$consumptionmemories[0]+$consumptionmemories[$i];
my $consommation="$conso_ajoutee[$i] , $namememories[0] et $namememories[$i]\n";
$dx2=(($coordonneesX[$i]-$coordonneesX[0])*($coordonneesX[$i]-$coordonneesX[0]));
$dy2=(($coordonneesY[$i]-$coordonneesY[0])*($coordonneesY[$i]-$coordonneesY[0]));
$di=sqrt($dx2+$dy2);
my $duree_difference= abs ($duree[0]-$duree[$i]);
my $nbadresses_difference= abs ($nbadresses[0]-$nbadresses[$i]);
$tab0{$namememories[$i]}{conso_ajoutee}=$conso_ajoutee[$i];
$tab0{$namememories[$i]}{distance}=$di;
$tab0{$namememories[$i]}{duree_difference}=$duree_difference;
$duree_affichee=abs ($tab0{$namememories[$i]}{duree_difference}- $duree[0]);
$tab0{$namememories[$i]}{nbadresses_difference}=$nbadresses_difference;
$tab0{$namememories[$i]}{duree_affichee}=$duree_affichee;
$tab0{$namememories[$i]}{coordonneesX}=$coordonneesX[$i];
$tab0{$namememories[$i]}{coordonneesY}=$coordonneesY[$i];
$tab0{$namememories[$i]}{nbadresses}=$nbadresses[$i];
$tab0{$namememories[$i]}{indice}=$i;
foreach $current_key (keys %tab0) {
if (($tab0{$current_key}{conso_ajoutee} <(my $conso_ajoutee_max=50000))
&&($tab0{$current_key}{distance}>(my $distance_min=17000))
&&($tab0{$current_key}{duree_difference}<(my $duree_difference_max=100))
&&($tab0{$current_key}{nbadresses_difference}<(my $nbadresses_difference_max=100)))
{
push @indice,$tab0{$current_key}{indice};
push @nbadresses_courante, $tab0{$current_key}{nbadresses};
push @coordonneesX_courante,$tab0{$current_key}{coordonneesX};
push @coordonneesY_courante,$tab0{$current_key}{coordonneesY};
push @duree_courante,$tab0{$current_key}{duree_affichee};
push @conso_courante, $tab0{$current_key}{conso_ajoutee};
push @key,$current_key;
push @bonnes_memoires,$namememories[0];
push @bonnes_memoires, $key[0];
$a=$indice[0];
return $p;
}
}
while ($a == undef){$p++;next;}} |
Partager