User since
2005-08-28
20
Artikel
BenutzerIn
Hallo,
Erst einmal vielen Dank an alle, die mir geholfen haben, das Problem mit ActivePerl zu lösen. Nun klappt alles als hätte es nie Schwierigkeiten gegeben.
Aber wie das bei einem Anfänger sein muß, (sonst lernt er es ja nicht) kommt hier gleich die nächste Nuss.
Laut Aufgabe soll ich ein Skript erstellen, welches ein Menü mit vier Verzweigungen anzeigt. Bei der Wahl der ersten drei Optionen sollen mit der Eingabe des "Users" jeweils verschiedenen Rechenoperationen ausgefürht und das Ergebnis ausgegeben werden. Über die vierte Option soll es beendet werden.
Mein bisher erstellter Code erlaubt mir nur die Eingabe bis zu den Zahlen, rechnet dann entweder nicht oder wird mit der Entertaste beendet.
Hier der Code:
[#!usr/bin/perl-w
use Math::Trig;
print <<HERE_TEXT;
Menue Verzweigung von drei Rechenaufgaben:
addieren <1>
multiplizieren <2>
subtrahieren <3>
beenden <4>
HERE_TEXT
$addieren = 0;
$multiplizieren = 0;
$subtrahieren = 0;
$ergebnis = 0;
chomp ($eingabe =<STDIN>);
if($eingabe ==1)
{
print "Bitte geben Sie die Zahlen ein:\n";
chomp ($zahlen = <STDIN>);
print "\nzahlen\n";]
so habe ich das auch mit den anderen gemacht, aber es klappt nicht.
Kann mir da auch einer von Euch auf die Sprünge helfen??
Gruß und Danke Jojo
User since
2003-08-04
7321
Artikel
ModeratorIn
du musst den HIER_TEXT noch schliessen
User since
2003-09-19
120
Artikel
BenutzerIn
Hallo,
meinst du soetwas?
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!usr/bin/perl -w
use Math::Trig;
print <<HERE_TEXT;
Menue Verzweigung von drei Rechenaufgaben:
addieren <1>
multiplizieren <2>
subtrahieren <3>
beenden <4>
HERE_TEXT
$addieren = 0;
$multiplizieren = 0;
$subtrahieren = 0;
$ergebnis = 0;
my @zahlen;
chomp ($eingabe =<STDIN>);
# die zahlen werden mit leerzeichen getrennt eingegeben
print "Bitte geben Sie die Zahlen ein:\n";
chomp ($zahlen = <STDIN>);
# zahlen in ein array speichern
# anhand der leerzeichen den eingegebenen string in ein array aufsplitten
@zahlen = split(/ /, $zahlen);
# die 1. zahl aus array entfernen und $ergebnis mit dieser Zahl vorbelegen
$ergebnis = shift(@zahlen);
# alle zahlen die eingegeben worden sind durchlaufen
foreach my $zahl (@zahlen)
{
if($eingabe ==1)
{
$ergebnis += $zahl;
}
if($eingabe == 2)
{
$ergebnis *= $zahl;
}
if($eingabe == 3)
{
$ergebnis -= $zahl;
}
}
print "Erg: $ergebnis\n";
MfG
Jan aka ich.
If you tell the truth you don't have to remember anything.
-- Mark Twain