Awk-perl - Page 4

Résolu
  1. je dois parcourir mon tableau 40 part 40 (chaque 40 a part) ( chaque 40 constitut une matrice c'est une chose comme ca)

    il doit m'afficher :
    *)la matrice 1 est fausse car j'ai 8 zeros consecutives et pas d'autres zeros

    1,2,3,4,5,6,7,8,9,0,0,0,0,0,0,0,0,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40

    *)la matrice 2 est vrai car j'ai huit zero consécutive oui mais une fois je trouve d'autres zeros l'analyse devienne positive

    41,42,43,44,45,46,47,48,49,50,51,52,0,0,55,56,57,58,59,60,61,62,63,0,0,0,0,0,0,0,0,72,73,74,75,76,77,78,79,80
    0
    1. Mr est ce que vous m'avez compris?
      je te jure que je me suis trés pressé du temps
      demain je vais présenter ma premiere partie et elle manque que cette condition
      0
      1. les huits zero ok mais la conditions qu'ils soient consécutives?
        c ca le probleme?
        0
        1. j'ai fait ce que tu m'a appris a faire mais reste une condition comment verifier que les zeros sont consécutives?

          # !/usr/bin/perl -w

          use strict;
          use warnings;
          my @A;
          my @Tfin =(1,2,3,4,5,6,7,8,9,10,0,0,0,0,0,0,0,0,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,0,0,0,0,5,0,0,0,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80);

          for (my $i=0; $i<=$#Tfin; $i+=40)
          {
          my $b=($i/40)+1;
          push @A,$b if (scalar grep {/^0$/} @Tfin[$i..$i+39])==8;
          }
          print"@A\n";
          0
          1. Modérateur
            Re,

            Ce n'est pas comme ça que je t'ai appris ;-)))

            Attention, au contexte.
            C'est vraiement inutile et tordue de faire my $b=($i/40)+1; quand on a déjà les éléments de tableau.

            La solution que je t'ai donné traite les éléments de tableau quelque soit leur valeur.
            Dans ton cas tu divises l'indice de tableau avec 40 et tu lui ajoute 1.
            Mais ça ne marchera pas si tu auras d'autres valeurs dans le tableau.
            Bref tu traites les valeurs.
            C'est un peu comme sous Excel, travailler avec les cellules par adresse ou par contenu.
            Une approche par adresse permet de rendre la solution acceptable quelque soit le contenu ce qui n'est pas le cas si on utilise des valeurs constantes.

            Ma variante prends deux tranches de tableau, les 40 premiers éléments et la suite de 40 et ensuite teste s'il y a des zéros.

            Le traitement des zéro consecutives suivis d'autre zéro peut poser des problèmes si on pense aux dizaines.
            Et ton tableau et censé d'avoir que des données jusqu'à 80, ou il peut avoir des données plus grand que 100?
            0
        2. je vous en pris Mr Lami c'est la derniere aide
          please
          0
          1. Modérateur
            Salut,

            Tu l'as déjà dit une fois que c'est la dernière. Ne dit pas que je ne t'ai pas averti ;-)))
            Je vais regarde ce soir, mais je ne promets rien.
            0
        3. C'est quand meme clairement mieux en perl :)
          0
          1. oui mes données arrivent a 65530
            j'ai pas arrivé a un resultat fonctionnable jusqu'a maintenant
            0
            1. Modérateur
              Re,

              Puisque tu travailles avec les indices.
              Utilises plutôt mon code.
              0
              1. j'ai arrivé maintenant a un petit resultat
                mais si ca va marcher il faut que :

                si je stocke dans un tableau par exemple les indices 1,3,6
                il faut que j'efface les premiers 40 elements du tableau et les troisiemes 40 elements et les 6ieme 40 elements

                y a t-il une solution facile?
                0
                1. Modérateur
                  Re,

                  Il y toujours des solutions, mais la facilité d'une solution depends de la compréhension du problème.
                  Je n'ai fait que te donner des morceaux de code.
                  0
                  1. dans toute les cas Merci beaucoup Mr Lami tu m'as bcp aidé
                    je te remercie infinement
                    ça y est j'ai trouver une solution maintenant et elle fonctionne correctement
                    0
                    1. Modérateur
                      Re,

                      ça y est j'ai trouver une solution maintenant et elle fonctionne correctement
                      C'est parfait. Donc je n'ai plus rien à faire ;-))
                      0
                      1. merci a votre aide Mr Lami durant tout ma periode de pfe
                        0
                        1. salut ,

                          j'ai terminer mais je te demande une solution s'il y on a

                          j'ai trois script perl maintenant bien faite, j'ai developper une interface graphique GTK2-perl
                          j'ai trois boutons radios, chaque bouton dois faire appel a un script

                          est ce que cette commande permet de faire cette tache efficacement?

                          system("/usr/bin/perl /path/to/my_script.pl ");

                          merci bcp
                          0
                          Précédent
                          • 1
                          • 2
                          • 3
                          • 4