Leser: 1
![]() |
|< 1 2 >| | ![]() |
18 Einträge, 2 Seiten |
catweasel+2008-08-29 21:24:41--Aber was ich ursprünglich fragen wollte: welche besser Schreibweise gibt es, um diese Fehlermeldung zu vermeiden?
Code: (dl )1
2
3
4
51 eins
2 zwei
3 drei
Auswahl: exit
Argument "exit" isn't numeric in numeric eq (==) at /home/mm/perl/tesdt.pl line 18, <STDIN> line 1.
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
#! /usr/bin/perl -w use strict; use feature ":5.10"; while () { print "\nAuswahl: "; chomp( my $aw = <STDIN> ); given ( $aw ) { when ( '' ) { print "Keine Eingabe\n"; } when ( /[^\d*]/ ) { print "Ungültige Eingabe\n"; } when ( 0 ) { print "0\n"; last } when ( $_ > 0 and $_ < 11 ) { print "1-10\n"; last } when ( $_ >= 11 and $_ < 21 ) { print "11-20\n"; last } default { print "Ungültige Eingabe\n"; } } }
m/[^\d*]/
m/\D/
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
#! /usr/bin/perl -w use strict; use feature ":5.10"; while () { print "\nAuswahl: "; chomp( my $aw = <STDIN> ); given ( $aw ) { when ( '' ) { print "Keine Eingabe\n"; } when ( 'exit' ) { exit; } when ( /\D/ ) { print "Ungültige Eingabe\n"; } when ( 0 ) { print "0\n"; last } when ( $_ > 0 and $_ < 11 ) { print "1-10\n"; last } when ( $_ >= 11 and $_ < 21 ) { print "11-20\n"; last } default { print "Ungültige Eingabe\n"; } } }
![]() |
|< 1 2 >| | ![]() |
18 Einträge, 2 Seiten |