#!/Perl/bin/perl use strict; use warnings; $| = 1; #flush output # in diesem Programm benutzen wir den Substitutionsoperator # s/muster/Ersetzung/ # und den Transliteraloperator # tr/SUCHLISTE/ERSETZUNGSLISTE/ my %words = ("fred", "Kamel", "barney", "Lama", "betty", "Auster", "wilma", "Auster" ); my ( $name, $guess, $secretword, $original_name ); print "Wie heissen Sie? "; $name = ; chomp $name; $original_name = $name; $name =~ s/\W.*//; # alles hinter dem ersten Wort vergessen $name =~ tr/A-Z/a-z/; # alles in Kleinbuschstaben if ( $name eq "gerhard" ) { print "Hallo Gerhard, wie nett, dass du da bist!\n"; } else { print "Hallo $original_name!\n"; # Standard Gruß if( exists $words{$name} ){ $secretword = $words{$name} ; # Passwort holen } else { $secretword = "groucho"; # für alle die kein Passwort haben } print "Wie lautet das Geheimwort? "; $guess = ; chomp ( $guess ); while ( $guess ne $secretword ) { print "Falsch geraten, nochmal. Wie lautet das Geheimwort? "; $guess = ; chomp $guess; } } exit;