IsRealNumber: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
K (Angleichung Number-Funktionen und Hinweis auf JACK3)
 
(28 dazwischenliegende Versionen von 6 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
===Zugehörige Evaluatoren===
*'''MathEvaluator'''
=== Beschreibung ===
=== Beschreibung ===
Die Funktion ''isNumber'' prüft, ob es sich bei einer gegebenen Zeichenkette um eine Zahl handelt. Die Funktion erwartet einen String und gibt einen Boolean zurück.
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|''isNumber'']] ist nun eine eigenständige Funktion und daher '''kein Alias''' mehr für ''isRealNumber''. Siehe [[Übersicht Numberfunktionen]].
 
 
'''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 <code>+/- e</code> oder <code>+/- pi</code> '''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.
 
[[Übersicht Numberfunktionen|Hier]] findet sich eine Übersicht aller Number-Funktionen.


=== Syntax ===
=== Syntax ===
  isNumber(String zeichenkette)
  isRealNumber(Objekt objekt)


=== Parameter ===
=== Parameter ===
* '''zeichenkette''' - der zu überprüfende String
* '''objekt''' - das zu überprüfende Objekt


=== Return Value ===
=== Return Value ===
* Gibt einen Boolean zurück
* Gibt einen [[Boolean]] zurück


=== Beispiele ===
=== Beispiele ===
==== Standardfälle ====
==== Standardfälle ====
  isNumber('15.3')  --> returns true
  isRealNumber(15.3)  --> returns ''true''
  isNumber('zahl')  --> returns false
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 ====
==== Benutzung von Variablen ====
  isNumber('[pos=1]')
  isRealNumber([input=fillin1])
  isNumber('[var=a]')
   
isRealNumber([var=a])


=== Hinweise ===
=== Hinweise ===
'''JACK3:''' Für die Überprüfung von Fill-In Feldern kann der ''[[Formeleditor (JACK3)|Formeleditor]]'' verwendet werden oder ''Number'' für das Fill-In Feld eingestellt werden. Beispiel: <code>isRealNumber([input=fillin1])</code>
'''JACK2:''' Die Überprüfung mit Textfeldern funktioniert nur, wenn man den [[Formeleditor]] verwendet. Gibt man keinen Editor an, wird für ein Textfeld (<code>[pos=1] usw.</code>) ein OpenMath String zurückgegeben. Dadurch gibt <code>isRealNumber([pos=1])</code> sowie <code>isRealNumber('[pos=1]')</code> immer false zurück. Um ein richtiges Ergebnis zu erlangen, muss [[Matches]] genutzt werden.
[[Kategorie:Math-Evaluatorfunktion]][[Kategorie:Testfunktionen]][[Kategorie:JACK2]][[Kategorie:JACK3]]

Aktuelle Version vom 8. August 2024, 17:33 Uhr

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. Siehe Übersicht Numberfunktionen.


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.

Hier findet sich eine Übersicht aller Number-Funktionen.

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

JACK3: Für die Überprüfung von Fill-In Feldern kann der Formeleditor verwendet werden oder Number für das Fill-In Feld eingestellt werden. Beispiel: isRealNumber([input=fillin1])

JACK2: Die Überprüfung mit Textfeldern funktioniert nur, wenn man den Formeleditor verwendet. Gibt man keinen Editor an, wird für ein Textfeld ([pos=1] usw.) ein OpenMath String zurückgegeben. Dadurch gibt isRealNumber([pos=1]) sowie isRealNumber('[pos=1]') immer false zurück. Um ein richtiges Ergebnis zu erlangen, muss Matches genutzt werden.