[quote=Dubu,16.06.2006, 10:53]- Ich sehe weder "use strict" noch "use warnings". Bitte benutze beides. Siehe
Wissensbasis.UseStrict
- Der Fehler kommt vom fehlenden Semikolon in der drittletzten Zeile.
- Deine print-Anweisung gibt die Formel aus, nicht das Ergebnis. War das so gewünscht?
- Mit
chomp() kann man einen eventuellen Zeilenumbruch am Ende eines Strings entfernen. Das möchtest du wahrscheinlich zumindest für
$hypo und
$seite machen.[/quote]
Quote- Ich sehe weder "use strict" noch "use warnings". Bitte benutze beides. Siehe
Wissensbasis.UseStrict
- Der Fehler kommt vom fehlenden Semikolon in der drittletzten Zeile.
- Deine print-Anweisung gibt die Formel aus, nicht das Ergebnis. War das so gewünscht?
- Mit
chomp() kann man einen eventuellen Zeilenumbruch am Ende eines Strings entfernen. Das möchtest du wahrscheinlich zumindest für
$hypo und
$seite machen.
Ok, das mit usestrict usw muss ich mir anschauen,aber ich ba es jetzt noch optimiert:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!perl
print "\n\nDas Paddsensche Dreieckswunder\n\n";
print "--------------------------------------------------------------------\n Programm zum Errechnen von Dreiecksseiten im rechtwinkligen Dreieck\n--------------------------------------------------------------------\n\n";
print "Hast du die Hypothenuse gegeben? Gib 'Ja' oder 'Nein' ein.\n\n";
$info1 = <STDIN>;
if ($info1 eq "Ja\n") {
print "\n Ok, dann gebe sie nun ein\n\n";
$hypo = <STDIN>; #Die Hypothenuse
print "\n ...und nun die Seite, die du weisst eingeben...\n\n";
$seite = <STDIN>; # Die seite
print "\n Die fehlende Seite hat die Laenge " . ((($hypo ** 2) - ($seite ** 2)) ** 0.5);
} else {
print "\n Gut. Dann gib jetzt bitte die erste Seite ein:\n\n";
$seite1 = <STDIN>;
print "\n ...und dann die Seite 2 eingeben:\n\n";
$seite2 = <STDIN>;
print "\n Die Laenge der Hypothenuse c betraegt " . (($seite1 ** 2) + ($seite2 **2)) ** 0.5;
}
print "\n--------------------------------------------------------------------"