next up previous contents
Nächste Seite: Mathematische Funktionen Aufwärts: Vordefinierte Unterprogramme Vorherige Seite: Vordefinierte Unterprogramme   Inhalt

Numerische Funktionen

ABS Absolutbetrag einer Zahl
AIMAG Imaginärteil einer komplexen Zahl
AINT die (reelle) Zahl ohne die Nachkommastellen
ANINT die gerundete Zahl
CEILING kleinste ganzzahlige Zahl >= einer gegebenen Zahl
CMPLX wandelt eine Zahl in eine COMPLEX-Zahl um
CONJG konjugiert komplexe Zahl zu komplexer Zahl
DBLE wandelt eine Zahl in eine DOUBLE PRECISION-Zahl um
DIGITS Anzahl signifikanter Ziffern im Zahlenmodell des Parameters
DIM liefert x-y, falls positiv, sonst 0
DPROD DOUBLE PRECISION-Produkt zweier REAL-Zahlen
EPSILON betragskleinste Differenz /= 0
EXPONENT Exponententeil des Parameters
FLOOR größte ganze Zahl <= einer gegebenen Zahl
FRACTION Mantisse einer Zahl
HUGE größter Wert im Zahlenmodell des Parameters
INT Konvertierung in eine INTEGER-Zahl
MAX, MIN liefert den größten bzw. kleinsten Wert der Parameter
MAXEXPONENT liefert den größten bzw. kleinsten Exponenten im
MINEXPONENT Zahlenmodell des Parameters
MOD liefert den Rest der modulo-Funktion
MODULO Wert der modulo-Funktion
NEAREST nächste darstellbare Zahl
NINT die gerundete Zahl in eine INTEGER-Zahl konvertiert
PRECISION liefert die Genauigkeit des Zahlenmodells des Parameters
RADIX Basis des Zahlenmodells, dem der Parameter angehört
RANGE Exponentenbereich des Zahlenmodells
REAL Typkonvertierung nach REAL
RRSPACING reziproker Wert des relativen Abstands der Modellzahlen
  in der Umgebung des Parameters
SCALE 1. Parameter × Basis des 1. hoch 2. (INTEGER)
SIGN Betrag des 1. mit Vorzeichen des 2. Parameters
SPACING Wert des absoluten Abstands der Modellzahlen
  in der Umgebung des Parameters
TINY kleinste positive Zahl im Zahlenmodell

Ein kurzes (sinnloses) Beispiel zur Verwendung der meisten numerischen Funktionen

PROGRAM numerik

 IMPLICIT NONE
 REAL :: x, y

 x = 5.2; y = -3.7
 WRITE (*,*) FLOOR(x), INT(x), FLOOR(y), INT(y)      !  5   5  -4  -3
 WRITE (*,*) FLOOR(x)/INT(x), FLOOR(y)/INT(y)        !  1   1
 WRITE (*,*) x, .000000001                           !  5.200000   9.9999997E-10
 WRITE (*,*) nearest(x,-2.), nearest(.000000001,3.)  !  5.199999   1.0000001E-09
 WRITE (*,*) ceiling(x), ceiling(y)                  !  6  -3
 WRITE (*,*) ABS(y), AINT(y)                         !  3.700000   -3.000000
 WRITE (*,*) ANINT(x), ANINT(y), NINT(y)             !  5.000000   -4.000000  -4
 WRITE (*,*) EPSILON(x), TINY(y)                     !  1.192E-07  1.175E-38
 WRITE (*,*) HUGE(x), maxexponent(y)                 !  3.402E+38  128
 WRITE (*,*) MAX(x,y), INT(MIN(x,y))                 !  5.2000000   -3
 WRITE (*,*) MOD(x,y), MOD(INT(x), ABS(INT(y)))      !  1.5000000    2
 WRITE (*,*) modulo(x,y), modulo(INT(x),ABS(INT(y))) ! -2.2000000    2 
 WRITE (*,*) precision(x),range(x),radix(y),digits(x)!  6  37   2   24
 WRITE (*,*) DIM(x,y), rrspacing(x), scale(x,INT(y)) !  8.900 1.090E+07 0.650
 WRITE (*,*) fraction(x) * radix(x) ** exponent(x)   !  5.2000000 
 WRITE (*,*) scale(fraction(x),exponent(x)), x       !  5.2000000  5.2000000
 WRITE (*,*) fraction(x), radix(x), exponent(x)      !  0.650   2    3
 WRITE (*,*) SIGN(x,y)                               ! -5.200
 WRITE (*,*) spacing(x), spacing(y)                  !  4.768E-07  2.384E-07
 WRITE (*,*) dprod(x,y)                              ! -19.2399995422363
END PROGRAM numerik


next up previous contents
Nächste Seite: Mathematische Funktionen Aufwärts: Vordefinierte Unterprogramme Vorherige Seite: Vordefinierte Unterprogramme   Inhalt
Reinfried O. Peter 2001-09-07