#!/Perl/bin/perl -w use strict; use warnings; # einfaches Taschenrechnerprogramm my $Zahl1 my $Zahl2 my $Rechenart my $Ergebnis read(STDIN, $input, $ENV{ 'CONTENT_LENGTH'}); my %Form; # Hash für Variablen my @pairs = split( /&/, $input ); foreach my $pair ( @pairs ) { my ($name, $value) = split(/=/, $pair); $name =~ tr/+/ /; $name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $value =~ tr/+/ /; $value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg; $Form{ $name } = $value; } # ab jetzt sind die eingelesenen CGI-Variablen in %Form drin print "Content-type: text/html\n\n"; print ""; print ""; print "Antwortseite des CGI-Programms"; print ""; print ""; print "

"; print "
$Ergebnis\n"; # Zahl 1 $Zahl1 = $Form{Zahl1}; # Zahl 2 $Zahl2 = $Form{Zahl2}; #Rechenart $Rechenart = $Form{Rechenart}; if ( $Rechenart eq '+' ) { $Ergebnis = $Zahl1 + $Zahl2; } elsif ( $Rechenart eq '-' ) { $Ergebnis = $Zahl1 - $Zahl2; } elsif ( $Rechenart eq '*' ) { $Ergebnis = $Zahl1 * $Zahl2; } elsif ( $Rechenart eq '/' ) { $Ergebnis eq $Zahl1 / $Zahl2; } else { print "Diese Rechenart ist mir nicht bekannt!"; die; #stirb - Programmabruch } print "Die Rechnung: $Zahl1 $Rechenart $Zahl2 = $Ergebnis"; print ""; print "";