Die 4 Grundrechnungsarten werden in Perl wie auch in alle anderen Programmiersprachen
so geschrieben.........
$var = $a + $b; #Addition
$var = $a - $b; #Subtraktion
$var = $a * $b; #Multiplikation
$var = $a / $b; #Division
Weitere Operatoren sind.......
$var = $a ** $b; #Exponent
$var = $a % $b; #Modulo teilt $a durch $b und
#gibt den Rest des Ergebnis aus
Damit lassen sich schon recht praktische Perl-Skripte erstellen...........
#!/usr/bin/perl -w
print "\n", "Stromverbrauch Ihres PC's im Jahr mit Kosten", "\n\n";
print "Wieviel Watt hat Ihr Tower : ";
chomp($watt=<stdin>);
printf "Wie lange ist Ihr PC pro Tag an (Std.) : ";
chomp($hour=<stdin>);
print "Wieviel zahlen sie pro KWh (Pf.) : ";
chomp($money=<stdin>);
$KWhJahr=($watt/1000) * $hour * 365;
$price = $KWhJahr * ($money/100);
printf "Ihr PC verbraucht im Jahr %.2f KW Strom\n",$KWhJahr;
printf "Das kostet Ihnen %.2f DM oder %.2f Euro im Jahr\n",$price,$price/1.955;
Weitere Operatoren stellen das Inkrementieren (++) und das Dekrementieren (--) da, was den Wert der $zahl um 1 erhöht bzw. um 1 erniedrigt. Wird hauptsächlich für Schleifen eingesetzt.......
$var++; #Wert von $var wird nach der Anweisung um 1 erhöht (Postfixnotation)
++$var; #Wert von $var wird sofort um 1 erhöht (Präfixnotation)
$var--; #Wert von $var wird nach der Anweisung um 1 verringert (Postfixnotation)
--$var; #Wert von $var wird sofort um 1 verringert (Präfixnotation)
Hierzu ein kleines Beispiel........
#!/usr/bin/perl -w
$wert = 1;
printf "%d\n",$wert++; #Ausgabe:1
printf "%d\n",++$wert; #Ausgabe: 3
printf "%d\n",$wert-- ; #Ausgabe: 3
printf "%d\n",--$wert; #Ausgabe: 1
Ein weiter Möglichkeit die Rechenoperatoren dazustellen ist mit der kombinierten Zuweisung.......
$a+=$b; #gleich wie $a=$a+$b
$a-=$b; #gleich wie $a=$a-$b
$a*=$b; #gleich wie $a=$a*$b
$a/=$b; #gleich wie $a=$a/$b
$a%=$b; #gleich wie $a=$a%$b
$a**=$b; #gleich wie $a=$a**$b
Bei Perl gilt für alle Rechenoperatoren außer dem Modulo-Operator (%) das diese mit Gleitkommazahlen rechnen. Aus.......
$var = 5 * 4;
....macht der Perl-Interpreter........
$var = 5.0 * 4.0;
Sollten sie aber doch Integer-Werte benutzen wollen so könne sie sich diese mittels....
use integer;
...erzwingen. Und Umgekehrt sollten sie auf keinen Fall mit Integern rechnen wollen benutzen sie......
no integer;
Perl hat auch wie andere Programmiersprachen mathematische Funktionen....
- abs($var) - Absoluter Betrag
- atan2($a, $b) - Arcustangens von $a/$b
- cos($var) - Kosinus
- exp($var) - Exponentialfunktion
- hex($var) - Umwandlung in Hexdezimalzahl
- int($var) - Umwandlung in Integerwert
- log($var) - Natürlicher Logarithmus
- oct($var) - Umwandlung in Octalzahl
- sin($sin) - Sinus
- sqrt($var) - Wurzel
Wenn sie weitere Module wie z.B. tan für Tangens benötigen müssen sie auf das
CPAN-Modul
Math::Trig
zurückgreifen.........
#!/usr/bin/perl -w
use Math::Trig; #für tan
$var=100;
print sqrt(10), "\n";
print cos($var), "\n";
print tan(5), "\n";
© 2001,2002 Jürgen Wolf
|