Subpage:Feedback/InstantFillInChecker: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Für jeden Feedbackfall muss hier ein Tag <option> oder ein Tag <ruleviolation> erstellt werden. * '''option:''' Definiert einen Feedbackfall. Bei dem Attrib…“)
 
Keine Bearbeitungszusammenfassung
 
(21 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Für jeden Feedbackfall muss hier ein Tag <option> oder ein Tag <ruleviolation> erstellt werden.
{{Template:Tag/Checker|Checkername=InstantFillInChecker|TagName=Feedback|Kurzertext=Für jeden Feedbackfall muss hier ein Tag <code><option></code> oder ein Tag <code><ruleviolation></code> erstellt werden.|Langertext=


* '''option:''' Definiert einen Feedbackfall.  Bei dem Attribut <code>result</code> muss die Überprüfungsvorschrift für den Evaluator (s. Sonstiges) eingetragen werden. Die einzelnen Fill-In-Kästchen referenziert man durch ein <code>[pos=i]</code>, wobei <code>i</code> für die Nummer des Fill-In-Kästchens steht. Diese nummeriert das System einfach nach der Reihenfolge ihres Auftretens in der Aufgabe von 1 bis n durch. Das erste Kästchen referenziert man also mit <code>[pos=1]</code>, usw.  Bei dem Attribut <code>points</code> kann eine Punktzahl eingetragen werden. Dadurch kann man Teilpunkte vergeben. Dies sollte man bei Lösungen machen, welche zum Teil richtig sind, z.B. eine von zwei Nullstellen richtig berechnet, oder bei denen sich nur kleinere Fehler, z.B. Vorzeichenfehler, eingeschlichen haben. Der Lernende bekommt für seine Lösung die Summe aller, in den getriggerten Feedbacks angegebenen, Punkte.  
Der Lernende bekommt für seine Lösung die Summe aller, in den getriggerten Feedbacks angegebenen, Punkte.


*'''eval:''' Mit Hilfe das Tag <code>[eval="..."]</code> kann man Berechnungen angeben, die zur Laufzeit durchgeführt werden. Für den Lernenden ist dann nur das Ergebnis dieser Berechnung sichtbar.
*'''eval:''' Mit Hilfe das Tag <code>[eval="..."]</code> kann man Berechnungen angeben, die zur Laufzeit durchgeführt werden. Für den Lernenden ist dann nur das Ergebnis dieser Berechnung sichtbar.
Zeile 8: Zeile 8:
::::* <code>$[eval="(32/4)*3"]$</code> führt zu 24
::::* <code>$[eval="(32/4)*3"]$</code> führt zu 24


* '''ruleviolation:''' Definiert ebenfalls einen Feedbackfall, falls Regeln mit Hilfe des Tags <code><rule></code> definiert wurden. Über das Attribut <code>test</code> ist zu bestimmen, welche Regeln verletzt wurden. Dafür erlaubt JACK vier verschiedene Funktionen, die bei diesem Attribut eingetragen werden können und auf die im Folgenden eingegangen wird. Die Regeln, welche z.T. die Argumente dieser Funktionen sind, sind stets über ihre ID zu referenzieren.


::* '''exactly:''' Erlaubt es, die Anzahl der verletzten Regeln genau zu zählen, unabhängig davon welche Regeln verletzt sind. Der Aufruf '''exactly(3)''' im Attribut <code>test</code> sorgt also dafür, dass der Inhalt dieses Tags als Feedback zurückgegeben wird, falls genau drei Regeln verletzt sind.
|Parent=*<code><exercise></code> ([[:Exercise|Link]])
 
|Child=*<code><option></code> ([[:Option|Link]]) '''ODER''' <code><ruleviolation></code> ([[:Ruleviolation|Link]])
::* '''atleast:''' Erlaubt es, die Anzahl der mindestens verletzten Regeln zu zählen, unabhängig davon welche Regeln verletzt sind. Der Aufruf '''atleast(3)''' im Attribut <code>test</code> sorgt also dafür, dass der Inhalt dieses Tags als Feedback zurückgegeben wird, falls mindestens drei Regeln verletzt sind.
|Bearbeiten={{{Bearbeiten|0}}}}}
 
<noinclude>[[Category:InstantFillInChecker]]</noinclude>
::* '''combined:''' Erlaubt es, eine Kombination von Regeln anzugeben, die verletzt sein müssen, damit das angegebene Feedback erscheint. Der Aufruf '''combined(1,2,3)''' im Attribut <code>test</code> sorgt also dafür, dass der Inhalt dieses Tags als Feedback zurückgegeben wird, falls die Regeln 1,2 und 3 verletzt sind.
 
::* '''condition:''' Erlaubt es, einen logischen Ausdruck anzugeben, der beschreibt welche Regeln verletzt bzw. nicht verletzt sein müssen, damit das jeweilige Feedback erscheint. Der Aufruf '''condition((1||2)&amp;&amp;!3)''' im Attribut <code>test</code> sorgt also dafür, dass der Inhalt dieses Tags als Feedback zurückgegeben wird, falls die Regel 1 oder 2 verletzt ist und 3 nicht verletzt ist.
 
::* '''andere:''' Wird ausgelöst, falls keine anderer Feedbackfall ausgelöst wird.

Aktuelle Version vom 26. November 2018, 14:36 Uhr


InstantFillInChecker

Für jeden Feedbackfall muss hier ein Tag <option> oder ein Tag <ruleviolation> erstellt werden. Der Lernende bekommt für seine Lösung die Summe aller, in den getriggerten Feedbacks angegebenen, Punkte.

  • eval: Mit Hilfe das Tag [eval="..."] kann man Berechnungen angeben, die zur Laufzeit durchgeführt werden. Für den Lernenden ist dann nur das Ergebnis dieser Berechnung sichtbar.
  • Bsp.:
  • $[eval="[var=a]-[pos=1]*34"]$ würde mit [var=a]=22 und [pos=1]=2 zu 680 führen
  • $[eval="(32/4)*3"]$ führt zu 24

Parent

Child

  • <option> (Link) ODER <ruleviolation> (Link)