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
print "Bitte die erste Zahl eingeben: ";
#Zahl1
$z1 = <STDIN>; chomp $z1;
print "\nBitte die zweite Zahl eingeben: ";
#Zahl2
$z2 = <STDIN>; chomp $z2;
print "\nBitte die Rechenart eingeben (+, -, *, /, % oder **): ";
#Rechenart
$ra = <STDIN>; chomp $ra;
if ( $ra eq '+' )
{
$erg = $z1 + $z2;
}
elsif ( $ra eq '-' )
{
$erg = $z1 - $z2;
}
elsif ( $ra eq '*' )
{
$erg = $z1 * $z2;
}
elsif ( $ra eq '/' )
{
$erg = $z1 / $z2;
}
elsif ( $ra eq '**' )
{
$erg = $z1 ** $z2;
}
elsif ( $ra eq '%' )
{
$erg = $z1 % $z2;
}
else
{
print "Diese Rechenart ist mir nicht bekannt!";
die; # stirb - Programmabruch
}
print "\nDie Rechnung: $z1 $ra $z2 = $erg\n";
<>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<html>
<head>
<title>Taschenrechner</title>
</head>
<body>
<h1>Taschenrechner</h1>
<form action="/cgi-bin/Taschenrechner.pl" method=post>
<p>Zahl 1: <input size="4" maxlength="3" name="Zahl1">
<br>
Zahl 2: <input size="4" maxlength="3" name="Zahl2">
<br>
Rechenart: <input size="2" maxlength="3" name="Rechenart">
<br>
<input type="SUBMIT" value="Berechnen">
<input type="reset" value="Reset">
</p>
</form>
</body>
</html>
2016-01-22T13:03:49 Michael47Hallo Kristian!
Muss mal schauen. Ich hoffe ich finde das CGI-Skript.
modedit Editiert von pq: fullquote entfernt
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
use strict; use warnings; use CGI (); my $cgi = CGI::new; my $zahl1 = $cgi->param('Zahl1'); my $zahl2 = $cgi->param('Zahl2'); my $operator = $cgi->param('Rechenart'); my $ergebnis; print $cgi->header(); print <<HTML; <html> <body> HTML if (length($zahl1) and length($zahl2) and length($operator)) { $ergebnis = 'NaN'; # berechne je nach Operator $ergebnis = $zahl1 * $zahl2 if $operator eq '*'; # und weitere .... wie für * nur mit anderem Operator hier einfügen print "<p>Das Ergebnis von $zahl1 $operator $zahl2 ist $ergebnis</p>"; } else { print <<HTML; <form action="#" method="post"> <p>Zahl 1: <input size="4" maxlength="3" name="Zahl1"> <br> Zahl 2: <input size="4" maxlength="3" name="Zahl2"> <br> Rechenart: <input size="2" maxlength="3" name="Rechenart"> <br> <input type="SUBMIT" value="Berechnen"> </p> </form> HTML } print <<HTML; </body> </html> HTML
2016-01-22T17:36:18 GwenDragon
2016-01-22T19:01:31 GwenDragonIch halte dich nicht für einen Idioten! Ich hab dir geholfen.
Du antwortest der falschen Person. Ich bin nicht diejenige, die Hilfe verweigert.
Dass Perl-Programmierer faul, ungeduldig udn überheblich sind, ist keine Beschimpfung sondern Larry Wall, der Erfinder der Sprache Perl hat das über alle Perler ausgesagt.
2016-01-22T19:10:40 GwenDragonDas Skript speicherst du in /cgi-bin/ deines Webservers und es braucht die Dateirechte AUsführbar und es wird dann als URL /cgi-bin/Taschenrechner.pl aufgerufen
#!/usr/bin/perl -w
use CGI::Carp qw( fatalsToBrowser );
#!C:\Perl64\bin\perl.exe -w
1 2 3 4 5 6 7
# berechne je nach Operator $ergebnis = $zahl1 * $zahl2 if $operator eq '*'; $ergebnis = $zahl1 / $zahl2 if $operator eq '/'; $ergebnis = $zahl1 + $zahl2 if $operator eq '+'; $ergebnis = $zahl1 - $zahl2 if $operator eq '-'; $ergebnis = $zahl1 ** $zahl2 if $operator eq '**'; $ergebnis = $zahl1 % $zahl2 if $operator eq '%';
2016-01-23T11:49:27 GwenDragonAch so, du hast Windows udn 64bit-Perl. das wußte ich nicht. Aber du warst ja so klug zu wissen, was tu tun musst. :)
Zu den Berechnungen, zeig doch mal wie der Teil deines Codes aussieht wo du berechnest.
1
2
3
4
5
6
7
8
9
10
11
12
if (length($zahl1) and length($zahl2) and length($operator)) {
$ergebnis = 'NaN';
# berechne je nach Operator
$ergebnis = $zahl1 * $zahl2 if $operator eq '+';
$ergebnis = $zahl1 * $zahl2 if $operator eq '-';
$ergebnis = $zahl1 * $zahl2 if $operator eq '*';
$ergebnis = $zahl1 * $zahl2 if $operator eq '/';
$ergebnis = $zahl1 * $zahl2 if $operator eq '%';
$ergebnis = $zahl1 * $zahl2 if $operator eq '**';
print "<p>Das Ergebnis von $zahl1 $operator $zahl2 ist $ergebnis</p>";
1 2 3 4 5 6 7
# berechne je nach Operator $ergebnis = $zahl1 * $zahl2 if $operator eq '*'; $ergebnis = $zahl1 / $zahl2 if $operator eq '/'; $ergebnis = $zahl1 + $zahl2 if $operator eq '+'; $ergebnis = $zahl1 - $zahl2 if $operator eq '-'; $ergebnis = $zahl1 ** $zahl2 if $operator eq '**'; $ergebnis = $zahl1 % $zahl2 if $operator eq '%';
$ergebnis = $zahl1 * $zahl2 if $operator eq '*';
$operator eq '*' and $ergebnis = $zahl1 * $zahl2;
2016-01-23T13:33:56 GwenDragonIch nahm an, wenn du die Shell kennst (dein Shellskript als Ausgangsaufgabe), weißt du auch mit Perl ein bisschen umzugehen.
Ansonsten hat das nichts mit Profi zu tun, Perl kann man lernen. http://learn.perl.org/
Was ist das denn für eine Ausbildung wo du Hausarbeiten mit Perl bekommst, ohne je von Perl gehört zu haben?