|
|
 |

|

 |

| Community » Perl: Allgemeines Forum |
|
kleines problem mit zahlen berechnen ( anfaenger )
|
Seitenanfang |
Hallo , habe vor 3 tagen angefangen perl zu lernen , und habe schon mein erstes problem :P kann sich jemand denn mal bitte mein skript anschauen und mir sagen , warum es nicht so funktioniert wie es soll ?#!F:\coden\Perl\bin\perl print "Bitte die zu berechnenden Zahlen eingeben \n Zahl - Rechenart - Zahl\n\n"; chomp($rechnung = <STDIN>); print "\a"; $rechnung =~ s/ //g; if ($rechnung =~ m/\+/) { $posi = index($rechnung,"+"); $erg = $zahl1 + $zahl2; } elsif ($rechnung =~ m/\-/) { $posi = index($rechnung,"-"); $erg = $zahl1 - $zahl2; } elsif($rechnung =~ m/\*/) { $posi = index($rechnung,"*"); $erg = $zahl1 * $zahl2; } elsif ($rechnung =~ m/\//) { $posi = index($rechnung,"/"); $erg = $zahl1 / $zahl2; } else { print "unbekannte Rechenart"; } print "Rechnung ohne Leerzeichen : $rechnung\n"; $zahl1 = substr($rechnung,0,$posi); $zahl2 = substr($rechnung,$posi+1); print "Zahlen 1 , 2 , und Ergebnis : $zahl1 , $zahl2 , $erg"; <STDIN>; wie man sieht , sollen hier zahlen berechnet werden , die aus einer eingabe stammen . eventuelle leerzeichen werden entfernt , die rechenart und die beiden zahlen werden ermittelt - nur mit dem ergebnis ( $erg ) habe ich problem ; es bleibt immer null .... :( waere schen , wenn mir jemand hefen koennte
Datum: 10.07.2006-11:03

|
re: kleines problem mit zahlen berechnen ( anfaenger )
|
Seitenanfang |
| Hallo Retep, dein Problem ist, dass du den Variablen $zahl1 und $zahl2 erst in den Zeilen 26 bzw. 27 Werte zuweist. D.h. bei deinen Berechnungen steht immer 0 in den Variablen und 0+0 bleibt nunmal 0. Gruß ThommyB
Datum: 10.07.2006-11:33

|
re: kleines problem mit zahlen berechnen ( anfaenger )
|
Seitenanfang |
| vielen dank , klappt jetzt
Datum: 10.07.2006-12:02

|
re: kleines problem mit zahlen berechnen ( anfaenger )
|
Seitenanfang |
| Aus solchen Gründen sollte man use strict und use warnings verwenden... http://wiki.perl-community.de/bin/view/Wissensbasis/UseStrict
Datum: 12.07.2006-12:49

|
|

|

|

|
 |

|

|
|