Bonjour,
Je suis débutant sur Perl et j'ai un problème dans mon premier programme pour le calcul d'une moyenne.
Je laisse l'utilisateur saisir ses notes et je lui affiche le résultat ainsi que le nombre de notes mais je n'avais pas vu un problème sur la note 0...
Elle est équivalente à undef et stoppe ma boucle....
Merci de me dire quelle solution vous préconisez pour cela et votre avis sur ma façon de coder... Toute critique à mon niveau est la bienvenue!!
Merci d'avance
BW
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 #!/usr/bin/perl # calcul de la moyenne #variables my @tabNote; my $longueurTab=0; my $note=-1; #Demande en boucle la saisie de notes # sub calculSomme { my $totalFonction="0"; foreach my $note ( @_ ) { $totalFonction+=$note; } $totalFonction; } while ($note != undef) { print "Saisissez une note (touche entrée pour quittez): "; $note=<STDIN>; push @tabNote, $note if ($note!="") } $longueurTab=@tabNote; my $totalNote=&calculSomme(@tabNote); if ( $totalNote !=0) { print "\nvous avez saisi $longueurTab notes\n"; print "La moyenne est de ".$totalNote/$longueurTab." !!!\n\n"; } else { print "vous n'avez pas saisi de note"; }
Partager