Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- [17:35:03:teuk@teuk:~/uto] ./algos_uto.pl 1
- Liste A = 2,5,1,7,3,8,2,4,9,0,10
- Moyenne : 4.63636363636364
- [17:35:36:teuk@teuk:~/uto] ./algos_uto.pl 2
- Liste A = 2,5,1,7,3,8,2,4,9,0,10
- Nombre minimum dans A : 0
- [17:35:39:teuk@teuk:~/uto] ./algos_uto.pl 3
- Liste A = 2,5,1,7,3,8,2,4,9,0,10
- 0,1,2,2,3,4,5,7,8,9,10Liste B (A du plus petit au plus grand) : 1
- [17:35:43:teuk@teuk:~/uto] cat algos_uto.pl
- #!/usr/bin/perl
- use strict;
- use warnings;
- use diagnostics;
- use File::Basename;
- use Switch;
- use List::Util qw( min max );
- unless (defined($ARGV[0]) && ($ARGV[0] =~ /^[1-3]$/)) {
- print STDERR "Usage: " . basename($0) . " 1\n";
- print STDERR "=> moyenne des ents de A\n";
- print STDERR "Usage: " . basename($0) . " 2\n";
- print STDERR "=> renvoie toujours le plus petit des ents de A.\n";
- print STDERR "Usage: " . basename($0) . " 3\n";
- print STDERR "=> renvoie une liste B, contenant les ents de A du plus petit au plus grand.\n";
- exit 1;
- }
- my @A = (2,5,1,7,3,8,2,4,9,0,10);
- print "Liste A = " . join(",",@A) . "\n";
- switch($ARGV[0]) {
- case "1" {
- my $sum = 0;
- for (my $i=0;$i<=$#A;$i++) { $sum+=$A[$i]; }
- print "Moyenne : " . ($sum / ($#A + 1)) . "\n";
- }
- case "2" {
- print "Nombre minimum dans A : " . min(@A) . "\n";
- }
- case "3" {
- print "Liste B (A du plus petit au plus grand) : " . print(join(",",sort { $a <=> $b } @A)) . "\n";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement