CountNodes

Aus JACK Wiki
Version vom 10. September 2024, 14:02 Uhr von Mschypula (Diskussion | Beiträge) (→‎Representation in OpenMath)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Zugehörige Evaluatoren

  • MathEvaluator

Beschreibung

Die Funktion countNodes zählt die Knoten des OpenMathObjektes.

Syntax

countNodes(Ausdruck argument)

Parameter

  • argument - die Expression, dessen Knoten gezählt werden sollen

Return Value

  • Gibt die Anzahl der Knoten zurück

Beispiele

Darstellung in OpenMath

\(3 \cdot 5 \)

<OMOBJ>
	<OMA>
		<OMS cd="arith1" name="times" />
			<OMI>3</OMI>
			<OMI>5</OMI>
	</OMA>
</OMOBJ>

\(3 \cdot 5 + 4 \)

<OMOBJ>
	<OMA>
		<OMS cd="arith1" name="plus" />
		<OMA>
			<OMS cd="arith1" name="times" />
			<OMI>3</OMI>
			<OMI>5</OMI>
		</OMA>
		<OMI>4</OMI>
	</OMA>
</OMOBJ>

Standardfälle

Jack2:
countNodes(3*5)    --> returns 4
countNodes(3*5+4)    --> returns 7
Jack3:
countNodes(3*5)    --> returns 3
countNodes(3*5+4)    --> returns 5

Benutzung mit Variablen

countNodes([var=a])

Benutzung mit studentischen Eingaben

Jack2:
countNodes([pos=1])
Jack3:
countNodes([input=field1])

Hinweise

  • Die Funktion countNodes wurde in Jack3 verbessert, sodass sie jetzt nur noch die tatsächliche Anzahl der Knoten zurück gibt. In Jack2 wird diese Funktion immer eine höhere Zahl zurückgeben, da diese dort fälschlicherweise noch interne Knoten zählt.
  • Wenn Variablen genutzt werden muss darauf geachtet werden, dass diese die Voraussetzung erfüllen.
  • Wenn die Eingabe der Studierenden genutzt wird muss auch hier darauf geachtet werden, dass die Voraussetzungen erfüllt sind und ob diese an der Stelle genutzt werden können.