Evaluator: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
=== Variablen erstellen ===
=== Variablen erstellen ===
Der Evaluator kann beim Erzeugen aufgabenbezogener [[Variablen]] innerhalb der [[ExerciseChain]] genutzt werden. Innerhalb des value-Attributs des <option>-Tags lassen sich mathematische Operationen so wie spezielle Funktionen des Evaluators nutzen, um beispielsweise Aufgaben mit unterschiedlichen bzw. zufallsgenerierten Werten zu erstellen.
Der Evaluator kann beim Erzeugen aufgabenbezogener [[Variablen]] innerhalb der [[ExerciseChain]] genutzt werden. Innerhalb des value-Attributs des <option>-Tags lassen sich Funktionen des Evaluators nutzen, um beispielsweise Aufgaben mit variablen bzw. zufallsgenerierten Werten zu erstellen.
 
  <variables>
  <variables>
   <option name="a" value="5"/>
   <option name="a" value="5"/>
Zeile 6: Zeile 7:
   <option name="c" value="[var=a]*[var=b]"/>
   <option name="c" value="[var=a]*[var=b]"/>
  </variabls>
  </variabls>
In diesem Beispiel werden die beiden Variablen a und b mit den Werten 5 bzw. 2 erstellt. Außerdem wird eine dritte Variable c erstellt, die das Produkt der beiden vorherigen Variablen bildet.  
 
In diesem Beispiel werden die beiden Variablen ''a'' und ''b'' mit den Werten ''5'' bzw. ''2'' erstellt. Außerdem wird eine dritte Variable ''c'' erstellt, die das Produkt der beiden vorherigen Variablen bildet.
 
Neben den mathematischen Basisoperationen enthält der Evaluator diverse eigen-implementierte Funktionen, die teilweise auf externe Computer-Algebra-Systeme (Symja, Sage, R) zugreifen. Beim Benutzen einer solchen CAS-Funktion kann mittels des Attributs ''cas'' und den Werten ''symja'', ''sage'', ''R'' explizit angegeben werden, welches CAS verwendet werden soll.
 
<option name="b" value="factorial([var=a])" cas="R" />
 
In diesem Fall enthält die Variable ''b'' die Fakultät der Zahl, die in der Variablen ''a'' enthalten war, berechnet mit Hilfe des CAS R.


=== Ergebnisauswertung ===
=== Ergebnisauswertung ===

Version vom 11. April 2017, 10:42 Uhr

Variablen erstellen

Der Evaluator kann beim Erzeugen aufgabenbezogener Variablen innerhalb der ExerciseChain genutzt werden. Innerhalb des value-Attributs des <option>-Tags lassen sich Funktionen des Evaluators nutzen, um beispielsweise Aufgaben mit variablen bzw. zufallsgenerierten Werten zu erstellen.

<variables>
 <option name="a" value="5"/>
 <option name="b" value="2"/>
 <option name="c" value="[var=a]*[var=b]"/>
</variabls>

In diesem Beispiel werden die beiden Variablen a und b mit den Werten 5 bzw. 2 erstellt. Außerdem wird eine dritte Variable c erstellt, die das Produkt der beiden vorherigen Variablen bildet.

Neben den mathematischen Basisoperationen enthält der Evaluator diverse eigen-implementierte Funktionen, die teilweise auf externe Computer-Algebra-Systeme (Symja, Sage, R) zugreifen. Beim Benutzen einer solchen CAS-Funktion kann mittels des Attributs cas und den Werten symja, sage, R explizit angegeben werden, welches CAS verwendet werden soll.

<option name="b" value="factorial([var=a])" cas="R" />

In diesem Fall enthält die Variable b die Fakultät der Zahl, die in der Variablen a enthalten war, berechnet mit Hilfe des CAS R.

Ergebnisauswertung

Der Evaluator wird ebenfalls bei der Auswertung des result-Attributs innerhalb des <option>-Tags verwendet.

<correctanswer>
 <option result="[pos=1]==25*2"/>
 <message>Richtig! Das Ergebnis ist 50.</message>
</correctanswer>

In diesem Beispiel wird überprüft, ob in dem ersten Fill In-Feld der Aufgabe der Wert 50 steht.

Hierbei versucht der Evaluator den Wert des result-Attributs, also der in Anführungszeichen stehende Ausdruck, zu einem Boolean auszuwerten. Für eine korrekte Funktionsweise ist es deswegen wichtig, dass der dort stehende Ausdruck auch tatsächlich zu einem booleschen Ergebnis validiert werden kann. Auf diese Weise können viele mitunter sehr unterschiedliche Lösungs-Einreichungen von Aufgaben auf ihre Richtigkeit geprüft werden, ohne jede einzelne Möglichkeit explizit angeben zu müssen.

Funktionen

Der Evaluator beinhaltet viele verschiedene Funktionen, die alle in JACK für die Aufgabendarstellung benutzt werden können. Hier geben wir eine vollständige Liste aller angebotenen Funktionen mit ihrer Funktionalität. <option>

allgemeine binäre Operatoren

unäre Operatoren

CAS Funktionen

Evaluator Funktionen

Hinweise

  • Wenn man zwei oder mehr Funktionen miteinander verknüpft fallen die Anführungszeichen weg: equalsExpr(evalEq('5','5'),'0')