+
" positives Vorzeichen (unär)
-
" negatives Vorzeichen (unär)
+
" Addition (binär)
-
" Subtraktion (binär)
*
" Multiplikation
/
" Division
%
" Rest einer Division (Modulo)
**
" Potenzbildung
++
" Inkrement
--
" Dekrement
Beispiel :
#!/usr/local/bin/perl -w @array = (10,20,30); $i = 1; print "$array[++$i]\n"; $i = 1; print "$array[$i++]\n"; |
30 20 |
==
" liefert true bei Gleichheit
!=
" liefert true bei Ungleichheit
>
" liefert true, falls linkes Argument
größer als rechtes Argument
<
" liefert true, falls linkes Argument
kleiner als rechtes Argument
>=
" liefert true, falls linkes Argument
größer oder gleich rechtem Argument
<=
" liefert true, falls linkes Argument
kleiner oder gleich rechtem Argument
<=>
" liefert -1,0,1 je nachdem, ob das linke Argument
kleiner,gleich oder größer als
das rechte Argument ist
abs($x)
$x
atan2($x,$y)
$x/$y
(zwischen -pi und
+pi)
cos($x)
$x
(im Bogenmaß)
exp($x)
$x
", wobei
e=2,71828...)
log($x)
$x
$x
muß positiv sein. Außerdem gilt:
$x == log(exp($x))
$x
)
sin($x)
$x
(im Bogenmaß)
sqrt($x)
$x
$x
muß positiv sein)
atan2()
können die Funktionen auch ohne
explizites Argument geschrieben werden; sie werden dann auf den
jeweiligen Wert von $_
angewandt.
Anmerkung: Weitere mathematische Funktionen finden sich im sogenannten POSIX-Modul, das zur Standard-Bibliothek von Perl gehört.
rand()
erzeugt. Ohne Argument liefert sie Werte zwischen
0 und 1, ansonsten (Gleitkomma-) Zahlen zwischen 0 und dem Wert des
Arguments. Um nicht jedesmal die gleiche Zahlenreihe zu erhalten,
wird die Funktion srand()
eingesetzt, die den
Zufallszahlengenerator mit einer Zahl (Funktionsargument)
initialisiert. Ohne Argument wird srand(time)
ausgeführt, d.h. als Initialisierung dient die Zahl der
Sekunden seit dem 1.1.1970.
Beispiel:
#!/usr/local/bin/perl -w for($i = 0;$i < 3;$i++) { print "(1)".rand()."\n" } print "\n"; srand(12345678); for($i = 0;$i < 3;$i++) { print "(2)".rand(0.6)."\n" } print "\n"; srand(); # srand(time); for($i = 0;$i < 3;$i++) { print "(3)".rand(150)."\n" } |
(1)0.1558837890625 (1)0.480255126953125 (1)0.754150390625 (2)0.328985595703125 (2)0.1641357421875 (2)0.031640625 (3)142.277526855469 (3)71.8826293945312 (3)148.493957519531 |
Bei mehrmaligem Abarbeiten des Skriptes ergeben sich nur bei den
Zahlen der Gruppe (2)
jeweils die gleichen Werte.
Autor: Eike Grote | Letzte Änderung: 19.06.2001 |