Bonjour , mon script créé deux suites et la fonction assembler suites doit les fussionné sans doublon de chiffre mais malheuresement j ai une erreur ma boucle ne fonctionne pas
je vous donne les trois fonctions principales que j uilise .. merci de votre aide .. :o
pour exemple :
@suite_assemblersuites = ( 1,2,3,4,5,6,7)
@suite_bis_assemblersuites = ( 5 , 6 , 7 , 8 , 9 , 10 )

je souhaite qu en resultat il y est dans @suites = (1,2,3,4,5,6,7,8,9,10)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
################################
 
 sub assemblersuites
{
  my ($reference1,$reference2) = @_ ;
  my @suite_bis_assemblersuites = @{$reference1} ;
  my @suite_assemblersuites = @{$reference2} ;
  @suites= @suite_assemblersuites ; 
  $longueur_suites = $#suites ;
  $longueur_bis = $#suite_bis_assemblersuites ;
 
   for ( $cpt = 0 ; $cpt <= $longueur_bis; $cpt += 1 )
    {
      $add = &estdanssuite ($suite_bis_assemblersuites[$cpt],@suites) ;
      if ( $add != 1 )
       {
        $suites[$#suites+1] = $suite_bis_assemblersuites[$cpt]  ;
       }
    }
  return @suites
}
les autres fonctions precedentes .. ... je sais pas si ca peut vous servir mais on ne sait jamais ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
 
#################################
sub estdanssuite
{
  my ($chiffre_estdanssuite ,@suite_estdanssuite ) = @_ ;
  $estdanssuite = 0 ;
  $longueur = $#suite_estdanssuite ;
   for ( $cpt = 0 ; $cpt <= $longueur ; $cpt += 1)
    {
      if ( $chiffre_estdanssuite == $suite_estdanssuite[$cpt] )
       {
         $estdanssuite  = 1 ;
         print $estdanssuite ;
         sleep 2;
       }
     }
    return $estdanssuite ;
}
#################################
sub creersuite
{
  my ( $debut_creersuite , $longueur_creersuite , $ecart_creersuite ) = @_ ;
    for ( $cpt = 1 ; $cpt <= $longueur_creersuite ; $cpt += 1 )
     {
       $suite_creersuite[$cpt] = $debut_creersuite ;
       $debut_creersuite += $ecart_creersuite ;
      }
   return @suite_creersuite
}