Hi,
ganz einfach mit einer for Schleife (siehe Code). Du solltest bei Eingaben von Usern immer mit dem Schlimmsten rechnen (Dummheit & Angriffe), deshalb überprüfe ich hier mit einem regulären Ausdruck, ob wirklich etwas zwischen 0 und 9 eingegeben wurde.
Du würdest nämlich z.B. sowas bekommen:
Bitte geben Sie eine Zahl ein:
a
Argument "a" isn't numeric in numeric gt (>) at sqrt.pl line 9, <STDIN> line 1.
Die Berechnung von Quadratwurzeln aus Zahlen groesser 10 und negativen Zahlen, sowie aus Nicht-Zahlen ist nicht moeglich.
Ende des Skripts.
Hier der Code:
#!/usr/bin/perl -w$eing = 0;
print "\nBitte geben Sie eine Zahl ein:\n";
chomp($eing = <STDIN>);
if ($eing =~ m/^[0-9]$/) {
for ($eing..$eing+5){
printf "Die Quadratwurzel von %d ist %.4f.\n", $_, sqrt $_;
}
}
else {
print "Die Berechnung von Quadratwurzeln aus Zahlen groesser 10 und negativen Zahlen, sowie aus Nicht-Zahlen ist nicht moeglich.\n";
}
print "Ende des Skripts.\n";
Gruss,
svenXY
Datum: 17.10.2005-10:31
