Je passe un tableau en paramètre à une fonction et je souhaiterai que
les modifications apportés dans ce tableau soient prises en compte non pas
en local mais sur le tableau passé en paramètres et ce sans avoir besoin de
le retourner.
Est-ce que quelqu'un connait la réponse?
`perldoc perlref` ou en français http://perl.enstimac.fr/DocFr/perlref.html
Bonne chance,
-- Denis
Eric
"Eric" <EricD> a écrit dans le message de news: 4279aa12$0$284$
Bonjour
Je passe un tableau en paramètre à une fonction et je souhaiterai que les modifications apportés dans ce tableau soient prises en compte non pas en local mais sur le tableau passé en paramètres et ce sans avoir besoin de le retourner. Est-ce que quelqu'un connait la réponse?
A#
Voila ce que j'ai trouvé cela fonctionnebien, mais j'ai quand même un doute .... normal c'est la première fois. Si vous pouvez me dire ce que vous en pensez Merci.
APPLI correspond à un fichier ouvert en écriture. @APPLI correspond à un tableau .
&tri( @APPLI ); &ecrit( *APPLI,@APPLI );
################################################### ################## fonctions ###################### ################################################### # tri les tableaux et compte le nombre # d'occurence ################################################### # entrée : nom du tableau a trié # sortie : tableau mis à jour ###################################################
################################################### ################## fonctions ###################### ################################################### # ecrit le tableaux dans un fichier # ################################################### # entrée : nom du fichier # : nom du tableau a trié # sortie : fichier renseigné ###################################################
sub ecrit{
my $NOM = shift;
print $NOM $_ foreach ( @_ );
}
"Eric" <EricD> a écrit dans le message de news:
4279aa12$0$284$626a14ce@news.free.fr...
Bonjour
Je passe un tableau en paramètre à une fonction et je souhaiterai que
les modifications apportés dans ce tableau soient prises en compte non pas
en local mais sur le tableau passé en paramètres et ce sans avoir besoin
de le retourner.
Est-ce que quelqu'un connait la réponse?
A#
Voila ce que j'ai trouvé cela fonctionnebien, mais j'ai quand même un doute
.... normal c'est la première fois.
Si vous pouvez me dire ce que vous en pensez Merci.
APPLI correspond à un fichier ouvert en écriture.
@APPLI correspond à un tableau .
&tri( @APPLI );
&ecrit( *APPLI,@APPLI );
###################################################
################## fonctions ######################
###################################################
# tri les tableaux et compte le nombre
# d'occurence
###################################################
# entrée : nom du tableau a trié
# sortie : tableau mis à jour
###################################################
###################################################
################## fonctions ######################
###################################################
# ecrit le tableaux dans un fichier
#
###################################################
# entrée : nom du fichier
# : nom du tableau a trié
# sortie : fichier renseigné
###################################################
"Eric" <EricD> a écrit dans le message de news: 4279aa12$0$284$
Bonjour
Je passe un tableau en paramètre à une fonction et je souhaiterai que les modifications apportés dans ce tableau soient prises en compte non pas en local mais sur le tableau passé en paramètres et ce sans avoir besoin de le retourner. Est-ce que quelqu'un connait la réponse?
A#
Voila ce que j'ai trouvé cela fonctionnebien, mais j'ai quand même un doute .... normal c'est la première fois. Si vous pouvez me dire ce que vous en pensez Merci.
APPLI correspond à un fichier ouvert en écriture. @APPLI correspond à un tableau .
&tri( @APPLI ); &ecrit( *APPLI,@APPLI );
################################################### ################## fonctions ###################### ################################################### # tri les tableaux et compte le nombre # d'occurence ################################################### # entrée : nom du tableau a trié # sortie : tableau mis à jour ###################################################
################################################### ################## fonctions ###################### ################################################### # ecrit le tableaux dans un fichier # ################################################### # entrée : nom du fichier # : nom du tableau a trié # sortie : fichier renseigné ###################################################
sub ecrit{
my $NOM = shift;
print $NOM $_ foreach ( @_ );
}
Jacques Caron
Salut,
On Fri, 6 May 2005 10:51:45 +0200, Eric <EricD> wrote:
Je pense que tu as du te rendre compte d'un souci: tu ne fais qu'ajouter les lignes "Occurence de..." à ton tableau initial. Si tu veux n'avoir que ces lignes-là, il faudrait que tu effaces le tableau d'abord: @$TABLEAU = (); Ensuite je pense que ton compte n'est pas exact, ça doit mieux marcher avec un $i=1; et en supprimant la ligne $i=1 if..., non?
Pour finir, il y a une méthode plus courte (mais pas forcément plus lisible): %count = (); map {$cnt{substr($_,0,15)}++} @tableau; @t = map {"Occurence de $_ = $count{$_} n"} keys %cnt;
Pas testé, mais ça doit pas être bien loin.
Jacques. -- Interactive Media Factory Création, développement et hébergement de services interactifs: SMS, SMS+, Audiotel... http://www.imfeurope.com/
Salut,
On Fri, 6 May 2005 10:51:45 +0200, Eric <EricD> wrote:
Je pense que tu as du te rendre compte d'un souci: tu ne fais qu'ajouter
les lignes "Occurence de..." à ton tableau initial. Si tu veux n'avoir que
ces lignes-là, il faudrait que tu effaces le tableau d'abord: @$TABLEAU =
(); Ensuite je pense que ton compte n'est pas exact, ça doit mieux marcher
avec un $i=1; et en supprimant la ligne $i=1 if..., non?
Pour finir, il y a une méthode plus courte (mais pas forcément plus
lisible):
%count = ();
map {$cnt{substr($_,0,15)}++} @tableau;
@t = map {"Occurence de $_ = $count{$_} n"} keys %cnt;
Pas testé, mais ça doit pas être bien loin.
Jacques.
--
Interactive Media Factory
Création, développement et hébergement
de services interactifs: SMS, SMS+, Audiotel...
http://www.imfeurope.com/
Je pense que tu as du te rendre compte d'un souci: tu ne fais qu'ajouter les lignes "Occurence de..." à ton tableau initial. Si tu veux n'avoir que ces lignes-là, il faudrait que tu effaces le tableau d'abord: @$TABLEAU = (); Ensuite je pense que ton compte n'est pas exact, ça doit mieux marcher avec un $i=1; et en supprimant la ligne $i=1 if..., non?
Pour finir, il y a une méthode plus courte (mais pas forcément plus lisible): %count = (); map {$cnt{substr($_,0,15)}++} @tableau; @t = map {"Occurence de $_ = $count{$_} n"} keys %cnt;
Pas testé, mais ça doit pas être bien loin.
Jacques. -- Interactive Media Factory Création, développement et hébergement de services interactifs: SMS, SMS+, Audiotel... http://www.imfeurope.com/