IsRealNumber

Aus JACK Wiki
Zur Navigation springen Zur Suche springen

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion isRealNumber prüft, ob es sich bei einem gegebenen Objekt um eine reelle Zahl handelt. Die Funktion gibt einen Boolean zurück.

Hinweis: isNumber ist nun eine eigenständige Funktion und daher kein Alias mehr für isRealNumber.


Für diese Funktion ist die Eingabe dann eine reelle Zahl, wenn sich das eingegebene Objekt zu einer reellen Zahl evaluieren lässt und die folgenden Kriterien erfüllt:

  • Es handelt sich um eine ganze oder Fließkomma-Zahl oder
  • es handelt sich um +/- e oder +/- pi oder
  • es handelt sich um einen Bruch, bei dem Zähler und Nenner eine ganze Zahl/Fließkommazahl/e/pi sind oder
  • es handelt sich um eine Wurzel und der Term unter der Wurzel entspricht den Kriterien.

Für alle anderen Objekte wird false zurückgeliefert. Dies schließt Exponenten, Logarithmus, trigonometrische Funktionen, Addition, Subtraktion und Multiplikation mit ein.

Syntax

isRealNumber(Objekt objekt)

Parameter

  • objekt - das zu überprüfende Objekt

Return Value

Beispiele

Standardfälle

isRealNumber(15.3)   --> returns true
isRealNumber(15)   --> returns true
isRealNumber(constE())   --> returns true
isRealNumber(constPi())   --> returns true
isRealNumber(1/2)   --> returns true
isRealNumber(sqrt(2))   --> returns true
isRealNumber(sqrt(4))   --> returns true
isRealNumber((1/2)/0.5)   --> returns false, der Zähler enthält einen Bruch und keine ganze oder Fließkommazahl
isRealNumber(sqrt(-1))   --> returns false, da komplexe Zahl
isRealNumber(infinity())   --> returns false, da Unendlich nicht als Zahl definiert ist
isRealNumber(2^(1/3))   --> returns false, da Exponenten nicht unterstützt werden
isRealNumber(ln(3))   --> returns false, da Logarithmus nicht unterstützt werden
isRealNumber(cos(4))   --> returns false, da trigonometrische Funktionen nicht unterstützt werden
isRealNumber(3*3)   --> returns false, da Multiplikation nicht unterstützt wird
isRealNumber(3+5)   --> returns false, da Addition nicht unterstützt wird
isRealNumber(33-5)   --> returns false, da Subtraktion nicht unterstützt wird


Benutzung von Variablen

isRealNumber([input=fillin1])

isRealNumber([var=a])

Hinweise

Die Überprüfung mit Textfeldern funktioniert nur, wenn man den Formeleditor verwendet.

Gibt man keinen Editor an, wird für ein Textfeld ([input=fillin1] usw.) ein OpenMath String zurückgegeben. Dadurch gibt isRealNumber([input=fillin1]) sowie isRealNumber('[input=fillin1]') immer false zurück. Um ein richtiges Ergebnis zu erlangen, muss Matches genutzt werden.