IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

Probleme en vue


Sujet :

Langage Perl

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 210
    Points : 99
    Points
    99
    Par défaut Probleme en vue
    Youki , un script perl qui passe un scalaire dans un tableau comme cela

    jusque la tout vas bien mais comment repasser @donner dans un scalire sans utiliser for my $???( @donner ) ?


    Et pour la deuxiéme question comment ont fait pour appeler d'autre sous programme si ont est dans un sous programme ? (c'est pour être sur de ce que je fait)

    Merci !-

    Balises [ code ] et [ /code ] ajoutées par 2Eurocents.

  2. #2
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut Re: Probleme en vue
    Citation Envoyé par vodevil
    un script perl qui passe un scalaire dans un tableau comme cela

    jusque la tout vas bien mais comment repasser @donner dans un scalire sans utiliser for my $???( @donner ) ?
    Bah ... par exemple ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    my $scal = join ("", @donner);
    Mais il y a surement d'autres façons de le faire

    Citation Envoyé par vodevil
    Et pour la deuxiéme question comment ont fait pour appeler d'autre sous programme si ont est dans un sous programme ? (c'est pour être sur de ce que je fait)

    Merci !-
    Euh ... A part qu'il n'est jamais bon d'aborder deux sujets dans le même fil ( quand est il résolu ? sur un des deux sujets ou sur les deux ), je ne comprend pas bien le problème
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 210
    Points : 99
    Points
    99
    Par défaut
    Thanks 2eurocents , s marche au poil , et pour la deuxiéme question c'est bon j'ai trouvé en fait pas besoin de me prendre la tête il suffit d'appeler la fonction comme n'importe qu'elle autre

  4. #4
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Alors il ne faut pas oublier d'ajouter le tag [Résolu] sur le sujet, avant de refermer doucement la porte en partant et en nous laissant somnoler dans la torpeur de l'été qui s'avance ...

    Bonne continuation.
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  5. #5
    Membre du Club Avatar de bluecurve
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 68
    Points : 43
    Points
    43
    Par défaut
    2Eurocents , moi j'ai le même parb mais ta méthode ralantit pas mal mon script !

  6. #6
    Membre expert
    Avatar de 2Eurocents
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 177
    Points : 3 166
    Points
    3 166
    Par défaut
    Citation Envoyé par bluecurve
    2Eurocents , moi j'ai le même parb mais ta méthode ralantit pas mal mon script !


    Ralentit par rapport à quoi ?

    Si c'est par rapport au même script, sans la fusion de chaines du tableau dans un scalaire, je veux bien le croire !

    Si c'est par rapport à une autre méthode, je veux bien la connaître !! Je reconnais que la mienne n'est pas forcément optimale (je suis un feignant, donc je n'ai pas cherché mieux que celle-ci qui est simplissime).

    Ceci dit, j'ai fait un peu de profilage sur quelques méthodes simples :
    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
    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
    #!/usr/bin/perl -d:Profile
     
    use strict;
    use warnings;
     
    sub avec_join
    {
      my @tab= 'aaa'..'zzz';
     
      my $scal=join ("", @tab);
      print "--- join ---\n$scal\n--- join ---\n";
    }
     
    sub avec_for
    {
      my @tab= 'aaa'..'zzz';
     
      my $scal="";
      $scal .= $_ for (@tab);
      print "--- for ---\n$scal\n--- for ---\n";
    }
     
    sub avec_foreach 
    {
      my @tab= 'aaa'..'zzz';
     
      my $scal="";
      $scal .= $_ foreach (@tab);
      print "--- foreach ---\n$scal\n--- foreach ---\n";
    }
     
    sub avec_map
    {
      my @tab= 'aaa'..'zzz';
     
      my $scal="";
      map { $scal .= $_ } @tab;
      print "--- map ---\n$scal\n--- map ---\n";
    }
     
    sub avec_print
    {
      my @tab= 'aaa'..'zzz';
     
      my $sep=$,;
      $,="";
      print "--- print ---\n";
      print @tab;
      print "\n--- print ---\n";
      $,=$sep;
    }
     
    avec_join ();
    avec_for ();
    avec_foreach ();
    avec_map ();
    avec_print ();
    Ca vaut ce que ça vaut, mais à l'éxécution, en regardant le fichier prof.out généré, j'ai la méthode avec_map qui est d'une lenteur affligeante ; j'ai la méthode avec_join qui s'en sort toujours parfaitement ; et j'ai les trois autres méthodes qui s'en sortent de manière équivalente - une fois devant, une fois derrière, selon l'activité annexe de mon système (même si la méthode avec_print n'est pas réellement comparable avec les autres).
    La FAQ Perl est par ici
    : La fonction "Rechercher", on aurait dû la nommer "Retrouver" - essayez et vous verrez pourquoi !

  7. #7
    Membre du Club Avatar de bluecurve
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 68
    Points : 43
    Points
    43
    Par défaut
    Si tu a tout testé je ne contrdirais pas t'est résultat , je vais donc revoie mon script pour trouvé d'ou sa vient

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problemes de vue ?
    Par ChameauFou dans le forum Requêtes
    Réponses: 3
    Dernier message: 21/05/2008, 17h43
  2. [oracle9] probleme de vue
    Par jacques64 dans le forum SQL
    Réponses: 4
    Dernier message: 17/09/2007, 17h09
  3. [Plone]Probleme de vue de mon new type de contenu
    Par schnito dans le forum Zope
    Réponses: 2
    Dernier message: 09/03/2007, 09h09
  4. probleme de vue sur sous formulaire
    Par fabrice518 dans le forum Access
    Réponses: 12
    Dernier message: 05/09/2005, 10h35
  5. probleme de vue
    Par delfare dans le forum OpenGL
    Réponses: 8
    Dernier message: 02/09/2004, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo