Quick Basic: Mathematische Funktionen

Aus Wikibooks

interne mathematische Funktionen[Bearbeiten]

Da QuickBasic über viele mathematische Funktionen verfügt, ist es auch für Anwendungen aus der numerischen Mathematik gut geeignet. In diesem Kapitel sollen die mathematischen Funktionen, die QuickBasic kennt vorgestellt werden.

Hier eine Übersicht aller Funktionen:

Funktion in QuickBasic mathematische Funktion Beschreibung
SGN(x)
Die Signum-Funktion liefert das Vorzeichen von , d. h. SGN(x) = 1, wenn positiv, SGN(x) = -1, wenn negativ und SGN(x) = 0, wenn
ABS(x)
liefert den Betrag von . (das Vorzeichen von wird einfach 'abgeschnitten'.
INT(x)
Rundet auf die nächste ganze Zahl ab.
SIN(x)
liefert den Sinus von . Der Winkel muss im Bogenmaß angegeben werden.

x kann ein von einem beliebigen numerischen Datentyp sein. Der Rückgabewert ist vom Typ SINGLE, es sei dann x wurde als DOUBLE angegeben, dann ist auch der Rückgabewert vom Typ DOUBLE.

COS(x)
liefert den Kosinus von . Der Winkel muss im Bogenmaß angegeben werden.

x kann ein von einem beliebigen numerischen Datentyp sein. Der Rückgabewert ist vom Typ SINGLE, es sei dann x wurde als DOUBLE angegeben, dann ist auch der Rückgabewert vom Typ DOUBLE.

TAN(x)
liefert den Tangens von . Der Winkel muss im Bogenmaß angegeben werden.

x kann ein von einem beliebigen numerischen Datentyp sein. Der Rückgabewert ist vom Typ SINGLE, es sei dann x wurde als DOUBLE angegeben, dann ist auch der Rückgabewert vom Typ DOUBLE.

ATN(x)
liefert den Arkustangens von . Der Rückgabewert stellt einen Winkel im Bogenmaß dar.

x kann ein von einem beliebigen numerischen Datentyp sein. Der Rückgabewert ist vom Typ SINGLE, es sei dann x wurde als DOUBLE angegeben, dann ist auch der Rückgabewert vom Typ DOUBLE.

EXP(x)
gibt (die Basis des natürlichen Logarithmus) potenziert mit zurück. Der Exponent darf nicht größer als sein, andernfalls wird ein Fehler gemeldet.

x kann ein von einem beliebigen numerischen Datentyp sein. Der Rückgabewert ist vom Typ SINGLE, es sei dann x wurde als DOUBLE angegeben, dann ist auch der Rückgabewert vom Typ DOUBLE.

LOG(x)
liefert den natürlichen Logarithmus, also den Logarithmus zu Basis von . muss echt größer als Null sein, andernfalls wird ein Fehler gemeldet.

x kann ein von einem beliebigen numerischen Datentyp sein. Der Rückgabewert ist vom Typ SINGLE, es sei dann x wurde als DOUBLE angegeben, dann ist auch der Rückgabewert vom Typ DOUBLE.

SQR(x)
liefert die Quadratwurzel aus . muss größer oder gleich Null sein, andernfalls wird ein Fehler gemeldet.

x kann ein von einem beliebigen numerischen Datentyp sein. Der Rückgabewert ist vom Typ SINGLE, es sei dann x wurde als DOUBLE angegeben, dann ist auch der Rückgabewert vom Typ DOUBLE.

weitere mathematische Funktionen[Bearbeiten]

Über mathematische Zusammenhänge - auf die hier nicht näher eingegangen werden soll - kann der Funktionsumfang von QuickBasic noch erweitert werden. Es ist alledings zu beachten, dass nicht alle Funktionen auch für alle Zahlen definiert sind, daher ist jeweils auf den Definitionsbereich zu achten, da sonst Leufzeitfehler auftreten könnten.

Hier eine Übersicht weiterer Funktionen, und wie sie in QuickBasic realisiert werden können:

Funktion mathematischer Zusammenhang Realisierung in QuickBasic
n-te Wurzel
sqrtn(x, n) = x ^ (1 / n)
Logarithmus zur Basis a
loga(x, a) = LOG(x) / LOG(a)


Trigonometrische Funktionen[Bearbeiten]

Funktion mathematischer Zusammenhang Realisierung in QuickBasic
Kotangens
cot(x) = 1 / TAN(x)
Sekans
sec(x) = 1 / COS(x)
Kosekans
csc(x) = 1 / SIN(x)
Arkussinus
arcsin(x) = ATN(x / SQR(1 - x * x))
Arkuskosinus
pi# = 3.14159265358979
arccos(x) = -ATN(x / SQR(1 - x * x)) + pi# / 2
Arkuskotangens
pi# = 3.14159265358979
arccot(x) = -ATN(x) + pi# / 2 


Hyperbolische Funktionen[Bearbeiten]

Funktion mathematischer Zusammenhang Realisierung in QuickBasic
Sinus Hyperbolicus
sinh(x) = (EXP(x) - EXP(-x)) / 2
Kosinus Hyperbolicus
cosh(x) = (EXP(x) + EXP(-x)) / 2
Tangens Hyperbolicus
tanh(x) = 2 / (EXP(-2 * x) + 1) + 1
Kotangens Hyperbolicus
coth(x) = (EXP(2 * x) + 1) / (EXP(2 * x) - 1)
Sekans Hyperbolicus
sech(x) = 2 / (EXP(x) + EXP(-x))
Kosekans Hyperbolicus
csch(x) = 2 / (EXP(x) - EXP(-x))
Areasinus Hyperbolicus
arsinh(x) = LOG(x + SQR(x * x + 1))
Areakosinus Hyperbolicus
arcosh(x) = LOG(x + SQR(x * x - 1))
Areatangens Hyperbolicus
artanh(x) = LOG((1 + x) / (1 - x)) / 2
Areakotangens Hyperbolicus
arcoth(x) = LOG((x + 1) / (x - 1)) / 2
Areasekans Hyperbolicus
arsech(x) = LOG((1 + SQR(1 - x * x)) / x)
Areakosekans Hyperbolicus
arcsch(x) = LOG(1 / x + SQR(1 + 1 / x / x))