2025-03-05 12:33:13 +01:00

38 lines
1.0 KiB
Perl

# Vi starter med å lage en fil som vi kaller Hello.pm
package Hello; # Samme navn som fila, men uten ".pm"
# Om fila het Hello/World.pm, må vi kalle pakken Hello::World
sub person {
my $navn = shift;
my $kjonn = shift;
die "person() skal ha 2 argumenter" unless @_ == 0;
die "$navn sitt kjønn må være 'M' eller 'K'! (ikke '$kjonn')\n"
unless $kjonn =~ m/^[MK]$/;
return [ $navn, $kjonn, 0 ]; # siste tallet er en "hilse-teller"
}
sub hils {
my $person = shift; # vi venter oss returverdien fra person()
my $hva = $person->[1] eq "M" ? "han" : "hun";
my $hvem = $person->[0];
$person->[2]++; # hvor mange ganger $person er blitt hilst på?
print "Nei, se! Der har vi jo $hva $hvem!\n";
}
sub vis_ant_hilsninger {
my $person = shift;
my $hvem = $person->[0];
my $ant = $person->[2];
print "Vi har hilset på $hvem $ant gang",
( $ant-1 ? "er" : "" ), "\n";
}
1; # det er viktig at alle moduler returnerer en sann verdi!