J'aimerais pouvoir refaire un bloc de code est-ce possible? Comment faire?
Merci,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 BLOC ALIGN : { if (...){ REDO ALIGN } }
J'aimerais pouvoir refaire un bloc de code est-ce possible? Comment faire?
Merci,
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 BLOC ALIGN : { if (...){ REDO ALIGN } }
c'est à dire ? J'ai pas bien saisi ce que tu veux faire.
- Les meilleurs cours et tutoriels Perl et Perl 6 pour vous former ;
- FAQ Perl, Perl 6 et Perl/Tk d'entraide ;
- Les news sur la rubrique Perl ;
- S'abonner au compte Twitter de la rubrique Perl ;
- Mes tutoriels developpez.com.
Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !
Je voudrais pouvoir refaire une portion de code qui n'est pas une boucle.
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 BLOC ALIGN : { my @sort_sequences; for my $l (0..$#sequences){ if (defined $sequences[$l]){ push (@sort_sequences, @{$sequences[$l]}); } } for my $l (1..$#sort_sequences){ } # if(...) {refaire le bloc avec @sequences qui a été modifié} }
avec goto.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 my $toto = 0; TUTU : { print "bloc\n"; $toto++; goto TUTU while ($toto <= 5); } print "fin\n";
- Les meilleurs cours et tutoriels Perl et Perl 6 pour vous former ;
- FAQ Perl, Perl 6 et Perl/Tk d'entraide ;
- Les news sur la rubrique Perl ;
- S'abonner au compte Twitter de la rubrique Perl ;
- Mes tutoriels developpez.com.
Pas de questions technique par messagerie privée (lisez les règles du forum Perl) et pour les nouveaux !
Comme il est interdit d'utiliser goto, il faut utiliser redo :
S'il n'y a pas d'ambigüité sur la boucle, le label est optionnel.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 my $toto = 0; TUTU : { print "bloc\n"; $toto++; redo TUTU while ($toto <= 5); } print "fin\n";
Comme indiqué dans le manuel de "redo" :
Note that a block by itself is semantically identical to a loop
that executes once. Thus "redo" inside such a block will
effectively turn it into a looping construct.
See also "continue" for an illustration of how "last", "next",
and "redo" work.
Partager