1 / 9

MathCoach Ein web-basierter Mathematik-Tutor

MathCoach Ein web-basierter Mathematik-Tutor. Die Autorensprache LaplaceScript. Überblick. Die Autorensprache LaplaceScript Was ist LaplaceScript? Beispiele. Was ist LaplaceScript?.

taima
Download Presentation

MathCoach Ein web-basierter Mathematik-Tutor

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MathCoachEin web-basierter Mathematik-Tutor Die Autorensprache LaplaceScript

  2. Überblick Die Autorensprache LaplaceScript • Was ist LaplaceScript? • Beispiele MathCoach Projekt HTW des Saarlandes

  3. Was ist LaplaceScript? Die Autorensprache für MathCoach ist XML-basiert und sehr leicht zu erlernen. Sie ist schrittweise erlernbar, d.h. schon mit wenigen Befehlen kann ein Autor sehr wirkungsvolle Übungsaufgaben erstellen, wie auf den folgenden Folien beispielhaft gezeigt wird. Merkmale von LaplaceScript: • leicht zu erlernende Beschreibungssprache für interaktive Übungsaufgaben • bietet die wichtigsten Eigenschaften einer „echten“ Programmiersprache • für mathematische Aufgaben konzipiert (enthält Datentypen wie Matrizen, Vektoren) • XML-basiert • erlaubt den Einsatz von (X)HTML und MathML • erlaubt die direkte Verwendung von PROLOG-, R- und MuPAD-Syntax Auf der CD-ROM ist ein Tutorial für Autoren mit weiteren Informationen zu LaplaceScript enthalten. MathCoach Projekt HTW des Saarlandes

  4. Beispiele <laplace> <startup> <button name="r-button" status="disabled"/><button name="rplot-button" status="disabled"/> <print> <h2>Wieviele Quadratmeter hat Arnolds Zimmer?</h2><hr/>Das Zimmer ist viereckig. Rechtwinklig sind allerdings nur zwei schräg gegenüberliegende Ecken des Zimmers.<br/>Alle vier Seiten des Raumes sind unterschiedlich lang, haben aber jeweils und stets in Metern gemessen eine ganzzahlige Länge.<p/>Arnolds Zimmer ist das kleinstmögliche, auf das diese Beschreibung zutrifft.<br/><p/> Zur Lösung der Aufgabe einfach die Anzahl der Quadratmeter ( ohne Maßeinheit ) eingeben!<br/><p/> </print> </startup> <interaction> <if>$_USR_INPUT_0 == 18</if><then><print>Stimmt!</print></then> <else-if>$_USR_INPUT_0 == 65</else-if> <then><print>Du scheinst auf dem richtigen Weg zu sein. Aber ist denn 65 wirklich schon die Quadratmeterzahl?!</print></then> <else><print>Leider falsch.</print></else> </interaction> <support> <subtask> <level> <define-help> <print>Hier ein <i>Grundriss</i> des Zimmers:<br/><img src="/laplus/lsfm/grundriss.png"/></print> </define-help> </level> </subtask> </support> </laplace> Interaktionssteuerung durch bedingte Verzeigungen modellierbar Darstellung der Aufgabe siehe nächste Folie  MathCoach Projekt HTW des Saarlandes

  5. Beispiele MathCoach Projekt HTW des Saarlandes

  6. Beispiele eine einfache Multiple Choice Aufgabe <laplace> <procedure name="showQuestion">…</procedure> <startup> <layout name="slim"/> <console action="hide"/> <call-procedure name="showQuestion"/> </startup> <interaction> <clear/> <call-procedure name="showQuestion"/> <var name="answers"><get-parameter name="o"/></var> <var name="button"><get-parameter name="mcqOK"/></var> <vectorize target="answers">$answers</vectorize> <var name="dim"><vector-dim name="answers"/></var> <if>$dim == 1 AND @answers[0] == "c"</if> <then><print><fieldset><legend><h2>Answer</h2></legend><p>Richtig.</p></fieldset></print></then> <else-if>$dim > 1</else-if> <then><print><fieldset><legend><h2>Answer</h2></legend><p>Es kann nur ein Wert richtig sein.</p></fieldset></print></then> <else-if>$button == "OK"</else-if> <then><print><fieldset><legend><h2>Answer</h2></legend><p>Leider falsch.</p></fieldset></print></then> </interaction> <support/> </laplace> MathCoach Projekt HTW des Saarlandes

  7. Beispiele Einfache Erzeugung von Zufallszahlen <laplace> <startup> <layout name="slim"/> <print><u>Zufallszahlen</u><p/></print> <var name="r1"><random set="real" min="-10" max="10" /></var> <var name="r2"><random set="real" min="0" max="1" /></var> <var name="r3"><random set="real" min="0" max="0.1" /></var> <var name="g1"><random set="integer" min="-10" max="10" /></var> <var name="g2"><random set="integer" min="0" max="1" /></var> <var name="g3"><random set="integer" min="0" max="1000000"/></var> <print> r = $r1 : r &#x2208; [-10,...,10)<br/> r = $r2 : r &#x2208; [0,...,1)<br/> r = $r3 : r &#x2208; [0,...,0.1)<br/> <hr/> r = $g1 : r &#x2208; {-10,...,10}<br/> r = $g2 : r &#x2208; {0, 1}<br/> r = $g3 : r &#x2208; {0,...,1000000}<br/> </print> </startup> <interaction><restart/></interaction> <support/> </laplace> MathCoach Projekt HTW des Saarlandes

  8. Beispiele Verwendung von MuPAD <interaction> <if>$modus=="antworten"</if> <then> <var name="lsg"><mupad>int( $_USR_INPUT_0, x )</mupad></var> <var name="mi"><mathml source="swi-prolog">$_USR_INPUT_0</mathml></var> <var name="mlsg"><mathml source="swi-prolog">$lsg</mathml></var> <print>Eine Stammfunktion zu $mi ist z.B. $mlsg.<br/></print> <var name="modus">fragen</var> <var name="rn"><random set="integer" min="-10" max="+10"/></var> <var name="aufg"> <replace substring="\\d+" replacement="$rn">$_USR_INPUT_0</replace> </var> <var name="aufg"><mupad>simplify($aufg)</mupad></var> <var name="maufg"><mathml source="swi-prolog">$aufg</mathml></var> <print>Deine Aufgabe, finde eine Stammfunktion zu: $maufg</print> </then> <else> <var name="test"><mupad>is( diff( $_USR_INPUT_0, x ) - $aufg = 0 )</mupad></var> <if>$test == "TRUE"</if> <then> <print>Gut gemacht.</print> <var name="modus">antworten</var> </then> <else><print>$test, Leider falsch ...</print></else> </else> </interaction> MathCoach Projekt HTW des Saarlandes

  9. Beispiele <laplace> <startup> <layout name="slim"/> <prolog name="sets"> <input-code> <![CDATA[ member( X, [X|Tail] ). member( X, [_|Tail] ) :- member( X, Tail ). is_set( [] ) :- !. is_set( [Head|Tail] ) :- member( Head, Tail ), !, fail. is_set( [_|Tail] ) :- is_set( Tail ). ]]> </input-code> </prolog> </startup> <interaction> <var name="result"><prolog name="sets"> <get-answer>is_set( $_USR_INPUT_0 ).</get-answer></prolog></var> <if>$result == "No."</if> <then><var name="result">$_USR_INPUT_0 ist keine Menge.</var></then> <else><var name="result">$_USR_INPUT_0 ist eine Menge.</var></else> <print>$result</print> </interaction> <support/> </laplace> Benutzung von PROLOG- Syntax direkt im Autorenskript möglich MathCoach Projekt HTW des Saarlandes

More Related