<?xml version="1.0" encoding="UTF-8"?>
<quiz>
<!-- question: 8382978  -->
  <question type="stack">
    <name>
      <text>Funktionsterm ablesen</text>
    </name>
    <questiontext format="html">
      <text><![CDATA[<p>In der folgenden Abbildung ist der Funktionsgraph eines Polynoms zweiten Grades \(p(x)\) zu sehen. Bitte geben Sie die den Funktionsterm von \(p\) <em>in vollständig ausmultiplizierter Form</em> ein.</p>
<p>{@plot@}</p>
<p>Antwort: [[input:ans1]] [[validation:ans1]]</p>]]></text>
    </questiontext>
    <generalfeedback format="html">
      <text></text>
    </generalfeedback>
    <defaultgrade>1.0000000</defaultgrade>
    <penalty>0.1000000</penalty>
    <hidden>0</hidden>
    <idnumber></idnumber>
    <stackversion>
      <text>2024012900</text>
    </stackversion>
    <questionvariables>
      <text>/*
Die Aufgabe „Funktionsterm ablesen“, Team E-Learning@Hochschule Ruhr West von Jonas Lache, ist lizenziert unter einer CC BY-SA 4.0 International Lizenz (https://creativecommons.org/licenses/by-sa/4.0/). 
*/

n1: rand_with_prohib(-5,5,[0]);
n2: rand_with_prohib(-5,5,[n1,0,-n1]);
px: expand((x-n1)*(x-n2));
plot: plot(px,[x,-6,6],[xtics,-6,1,6],[color,blue],[box,false],[axes,solid]);</text>
    </questionvariables>
    <specificfeedback format="html">
      <text><![CDATA[<p>[[feedback:prt1]]</p>]]></text>
    </specificfeedback>
    <questionnote>
      <text>{@px@}</text>
    </questionnote>
    <questiondescription format="html">
      <text></text>
    </questiondescription>
    <questionsimplify>1</questionsimplify>
    <assumepositive>0</assumepositive>
    <assumereal>0</assumereal>
    <prtcorrect format="html">
      <text><![CDATA[<p>Richtige Antwort, gut gemacht!</p>]]></text>
    </prtcorrect>
    <prtpartiallycorrect format="html">
      <text><![CDATA[<p>Ihre Antwort ist teilweise korrekt.</p>]]></text>
    </prtpartiallycorrect>
    <prtincorrect format="html">
      <text><![CDATA[<p>Falsche Antwort.</p>]]></text>
    </prtincorrect>
    <decimals>.</decimals>
    <multiplicationsign>dot</multiplicationsign>
    <sqrtsign>1</sqrtsign>
    <complexno>i</complexno>
    <inversetrig>cos-1</inversetrig>
    <logicsymbol>lang</logicsymbol>
    <matrixparens>[</matrixparens>
    <variantsselectionseed></variantsselectionseed>
    <input>
      <name>ans1</name>
      <type>algebraic</type>
      <tans>px</tans>
      <boxsize>15</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>1</mustverify>
      <showvalidation>1</showvalidation>
      <options></options>
    </input>
    <prt>
      <name>prt1</name>
      <value>1.0000000</value>
      <autosimplify>1</autosimplify>
      <feedbackstyle>1</feedbackstyle>
      <feedbackvariables>
        <text>plot: plot([px,ans1],[x,-6,6],[xtics,-6,1,6],[color,blue,red],[box,false],[axes,solid]);</text>
      </feedbackvariables>
      <node>
        <name>0</name>
        <description></description>
        <answertest>AlgEquiv</answertest>
        <sans>ans1</sans>
        <tans>px</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>=</truescoremode>
        <truescore>1</truescore>
        <truepenalty></truepenalty>
        <truenextnode>1</truenextnode>
        <trueanswernote>prt1-1-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Sie haben den Funktionsterm korrekt abgelesen.</p>]]></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>1</falsenextnode>
        <falseanswernote>prt1-1-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Sie haben den Funktionsterm leider nicht korrekt abgelesen. In der folgenden Grafik sehen Sie noch einmal den Funktionsgraphen aus der Aufgabenstellung (in <span style="color:blue">blau</span>) sowie den Funktionsgraphen Ihrer angegebenen Funktion (in <span style="color:red">rot</span>):</p>

{@plot@}]]></text>
        </falsefeedback>
      </node>
      <node>
        <name>1</name>
        <description></description>
        <answertest>Expanded</answertest>
        <sans>ans1</sans>
        <tans>fx</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>+</truescoremode>
        <truescore>0</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-2-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Sie haben den Term wie gefordert in vollständig ausmultiplizierter Form angegeben.</p>]]></text>
        </truefeedback>
        <falsescoremode>-</falsescoremode>
        <falsescore>0.5</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-2-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Sie haben den Term leider nicht in vollständig ausmultiplizierter Form angegeben, wie es gefordert war.</p>]]></text>
        </falsefeedback>
      </node>
    </prt>
  </question>

<!-- question: 8382976  -->
  <question type="stack">
    <name>
      <text>Nullstelle raten</text>
    </name>
    <questiontext format="html">
      <text><![CDATA[<p>Es sei das Polynom dritten Grades \(P(x)={@P1@}\) gegeben.</p>
<p>Finden Sie durch Ausprobieren eine Nullstelle von \(P\) heraus.</p>
<p>Antwort: \(P\) hat eine Nullstelle bei \(x=\) [[input:ans1]] [[validation:ans1]]</p>
[[feedback:prt1]]]]></text>
    </questiontext>
    <generalfeedback format="html">
      <text></text>
    </generalfeedback>
    <defaultgrade>1.0000000</defaultgrade>
    <penalty>0.1000000</penalty>
    <hidden>0</hidden>
    <idnumber></idnumber>
    <stackversion>
      <text>2024012900</text>
    </stackversion>
    <questionvariables>
      <text>/*
Die Aufgabe „Nullstellen raten“ von Michael Kallweit und Jonas Lache, Fakultät für Mathematik, Ruhr-Universität Bochum, ist lizenziert unter einer CC BY-SA 4.0 International Lizenz (https://creativecommons.org/licenses/by-sa/4.0/). Die vorliegende Version wurde von Jonas Lache, Team E-Learning@Hochschule Ruhr West überarbeitet (letzte Änderung: 26.07.2024).
*/

n1: rand_with_prohib(-7,7,[0]);
n2: rand_with_prohib(-7,7,[0,n1,-n1]);
n3: rand_with_prohib(-7,7,[0,n1,-n1,n2,-n2]);

P1: expand((x-n1)*(x-n2)*(x-n3));

M1: set(n1,n2,n3);</text>
    </questionvariables>
    <specificfeedback format="html">
      <text></text>
    </specificfeedback>
    <questionnote>
      <text>{@P1@}</text>
    </questionnote>
    <questiondescription format="html">
      <text></text>
    </questiondescription>
    <questionsimplify>1</questionsimplify>
    <assumepositive>0</assumepositive>
    <assumereal>0</assumereal>
    <prtcorrect format="html">
      <text>Richtige Antwort, gut gemacht!</text>
    </prtcorrect>
    <prtpartiallycorrect format="html">
      <text>Ihre Antwort ist teilweise korrekt.</text>
    </prtpartiallycorrect>
    <prtincorrect format="html">
      <text>Falsche Antwort.</text>
    </prtincorrect>
    <decimals>.</decimals>
    <multiplicationsign>dot</multiplicationsign>
    <sqrtsign>1</sqrtsign>
    <complexno>i</complexno>
    <inversetrig>cos-1</inversetrig>
    <logicsymbol>lang</logicsymbol>
    <matrixparens>[</matrixparens>
    <variantsselectionseed></variantsselectionseed>
    <input>
      <name>ans1</name>
      <type>algebraic</type>
      <tans>n1</tans>
      <boxsize>15</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>1</mustverify>
      <showvalidation>1</showvalidation>
      <options></options>
    </input>
    <prt>
      <name>prt1</name>
      <value>1.0000000</value>
      <autosimplify>1</autosimplify>
      <feedbackstyle>1</feedbackstyle>
      <feedbackvariables>
        <text>y1: subst(x=ans1,P1);</text>
      </feedbackvariables>
      <node>
        <name>0</name>
        <description></description>
        <answertest>AlgEquiv</answertest>
        <sans>y1</sans>
        <tans>0</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>=</truescoremode>
        <truescore>1</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-1-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Super, Sie haben eine der Nullstellen gefunden: Setzt man \(x={@ans1@}\) in \(P\) ein, kommt \(P({@ans1@})=0\) heraus.</p>]]></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-1-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Leider ist Ihre Antwort {@ans1@} keine Nullstelle des Polynoms \(P(x)={@P1@}\). Wenn {@ans1@} eine Nullstelle von \(P\) wäre, müsste laut Definition ja \(P({@ans1@})=0\) gelten, aber es gilt \(P({@ans1@})={@y1@}\).</p>]]></text>
        </falsefeedback>
      </node>
    </prt>
  </question>

<!-- question: 8382979  -->
  <question type="stack">
    <name>
      <text>Nullstellen (Equivalence reasoning)</text>
    </name>
    <questiontext format="html">
      <text><![CDATA[<p>Lösen Sie die Gleichung {@eq@} nach \(x\) auf, indem Sie im ersten Eingabefeld für jeden Umformungsschritt eine eigene Zeile verwenden.</p>
<p>[[input:ans1]] [[validation:ans1]]</p>
<p>Die Lösungsmenge lautet: [[input:ans2]] [[validation:ans2]]</p>
<p>[[feedback:prt1]]</p>]]></text>
    </questiontext>
    <generalfeedback format="html">
      <text></text>
    </generalfeedback>
    <defaultgrade>1.0000000</defaultgrade>
    <penalty>0.1000000</penalty>
    <hidden>0</hidden>
    <idnumber></idnumber>
    <stackversion>
      <text>2024012900</text>
    </stackversion>
    <questionvariables>
      <text>/*
Die Aufgabe „Nullstellen (Equivalence reasoning)“ (ursprünglicher Titel: „Nullstelle log(.) (Eq.Res)“) von Michael Kallweit und Jonas Lache, Fakultät für Mathematik, Ruhr-Universität Bochum, ist lizenziert unter einer CC BY-SA 4.0 International Lizenz (https://creativecommons.org/licenses/by-sa/4.0/). Die vorliegende Version wurde von Jonas Lache, Team E-Learning@Hochschule Ruhr West überarbeitet (letzte Änderung: 26.07.2024).
*/

eq: 0=log(x)-4;
eq1: 4=log(x);
eq2: e^4=x;
Liste: [eq,eq1,eq2];

TA: map(rhs, setify(solve(eq,x)));</text>
    </questionvariables>
    <specificfeedback format="html">
      <text></text>
    </specificfeedback>
    <questionnote>
      <text></text>
    </questionnote>
    <questiondescription format="html">
      <text></text>
    </questiondescription>
    <questionsimplify>0</questionsimplify>
    <assumepositive>0</assumepositive>
    <assumereal>0</assumereal>
    <prtcorrect format="html">
      <text><![CDATA[<p>Richtige Antwort, gut gemacht!</p>]]></text>
    </prtcorrect>
    <prtpartiallycorrect format="html">
      <text><![CDATA[<p>Ihre Antwort ist teilweise korrekt.</p>]]></text>
    </prtpartiallycorrect>
    <prtincorrect format="html">
      <text><![CDATA[<p>Falsche Antwort.</p>]]></text>
    </prtincorrect>
    <decimals>.</decimals>
    <multiplicationsign>dot</multiplicationsign>
    <sqrtsign>1</sqrtsign>
    <complexno>i</complexno>
    <inversetrig>cos-1</inversetrig>
    <logicsymbol>lang</logicsymbol>
    <matrixparens>[</matrixparens>
    <variantsselectionseed></variantsselectionseed>
    <input>
      <name>ans1</name>
      <type>equiv</type>
      <tans>Liste</tans>
      <boxsize>90</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>1</mustverify>
      <showvalidation>1</showvalidation>
      <options></options>
    </input>
    <input>
      <name>ans2</name>
      <type>algebraic</type>
      <tans>TA</tans>
      <boxsize>15</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>1</mustverify>
      <showvalidation>1</showvalidation>
      <options></options>
    </input>
    <prt>
      <name>prt1</name>
      <value>1.0000000</value>
      <autosimplify>1</autosimplify>
      <feedbackstyle>1</feedbackstyle>
      <feedbackvariables>
        <text></text>
      </feedbackvariables>
      <node>
        <name>0</name>
        <description></description>
        <answertest>Equiv</answertest>
        <sans>ans1</sans>
        <tans>Liste</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>=</truescoremode>
        <truescore>0.5</truescore>
        <truepenalty></truepenalty>
        <truenextnode>1</truenextnode>
        <trueanswernote>prt1-1-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Die Zeilen Ihrer Eingabe sind algebraisch äquivalent zu einander.</p>]]></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>1</falsenextnode>
        <falseanswernote>prt1-1-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Leider sind einzelne Umformungsschritte von Ihnen nicht korrekt.</p>
<p>Wenn Sie noch Probleme mit dem Umformen von Gleichungen dieser Art haben, finden Sie <a href="http://www.google.de/">HIER</a> einen Link, unter dem eine Beispielaufgabe mit Lösungsweg erklärt wird</p>]]></text>
        </falsefeedback>
      </node>
      <node>
        <name>1</name>
        <description></description>
        <answertest>AlgEquiv</answertest>
        <sans>ans2</sans>
        <tans>TA</tans>
        <testoptions></testoptions>
        <quiet>1</quiet>
        <truescoremode>+</truescoremode>
        <truescore>0.5</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-2-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Die von Ihnen angegebene Lösungsmenge ist richtig.</p>]]></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-2-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Die von Ihnen angegebene Lösungsmenge ist leider nicht richtig.</p>]]></text>
        </falsefeedback>
      </node>
    </prt>
  </question>

<!-- question: 8382982  -->
  <question type="stack">
    <name>
      <text>Nullstellen JSXGraph</text>
    </name>
    <questiontext format="html">
      <text><![CDATA[<p>Bewegen Sie die roten Punkte so, dass die Nullstellen der Parabel {@a1@} und {@b1@} sind.</p>

[[jsxgraph input-ref-ans1="ans1Ref" ]]
    var board = JXG.JSXGraph.initBoard(divid, {
        axis: true,
        showCopyright: false,
        boundingbox: [-5, 5, 15, -5],
    });
    var a = board.create("point", [1, 1], { showName:false });
    var b = board.create("point", [3, 3], { showName:false });
    var f = board.create("functiongraph", [
        function (x) {return ((b.Y() - a.Y()) / Math.pow(b.X() - a.X(), 2)) * Math.pow(x - a.X(), 2) +a.Y();},
    ]);
    stack_jxg.bind_list_of(ans1Ref, [a,b]);
[[/jsxgraph]]

<p style="display:none;">[[input:ans1]] [[validation:ans1]]</p>

[[feedback:prt1]]]]></text>
    </questiontext>
    <generalfeedback format="html">
      <text></text>
    </generalfeedback>
    <defaultgrade>1.0000000</defaultgrade>
    <penalty>0.1000000</penalty>
    <hidden>0</hidden>
    <idnumber></idnumber>
    <stackversion>
      <text>2024012900</text>
    </stackversion>
    <questionvariables>
      <text>/*
Die Aufgabe „Nullstellen JSXGraph“ (ursprünglicher Titel: „Parabel Nullstellen verschieben“) von Michael Kallweit und Jonas Lache, Fakultät für Mathematik, Ruhr-Universität Bochum, ist lizenziert unter einer CC BY-SA 4.0 International Lizenz (https://creativecommons.org/licenses/by-sa/4.0/). Die vorliegende Version wurde von Jonas Lache, Team E-Learning@Hochschule Ruhr West überarbeitet (letzte Änderung: 26.07.2024).
*/

a1: rand_with_step(-4,4,1);
b1: a1+2*rand_with_step(1,5,1);</text>
    </questionvariables>
    <specificfeedback format="html">
      <text></text>
    </specificfeedback>
    <questionnote>
      <text>Nullstellen: {@a1@},{@b1@}</text>
    </questionnote>
    <questiondescription format="html">
      <text></text>
    </questiondescription>
    <questionsimplify>1</questionsimplify>
    <assumepositive>0</assumepositive>
    <assumereal>0</assumereal>
    <prtcorrect format="html">
      <text>Richtige Antwort, gut gemacht!</text>
    </prtcorrect>
    <prtpartiallycorrect format="html">
      <text>Ihre Antwort ist teilweise korrekt.</text>
    </prtpartiallycorrect>
    <prtincorrect format="html">
      <text>Falsche Antwort.</text>
    </prtincorrect>
    <decimals>.</decimals>
    <multiplicationsign>dot</multiplicationsign>
    <sqrtsign>1</sqrtsign>
    <complexno>i</complexno>
    <inversetrig>cos-1</inversetrig>
    <logicsymbol>lang</logicsymbol>
    <matrixparens>[</matrixparens>
    <variantsselectionseed></variantsselectionseed>
    <input>
      <name>ans1</name>
      <type>algebraic</type>
      <tans>0</tans>
      <boxsize>15</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>0</mustverify>
      <showvalidation>0</showvalidation>
      <options>hideanswer</options>
    </input>
    <prt>
      <name>prt1</name>
      <value>1.0000000</value>
      <autosimplify>1</autosimplify>
      <feedbackstyle>1</feedbackstyle>
      <feedbackvariables>
        <text>p1: ans1[1];
p2: ans1[2];
f(x):=( (p2[2]-p1[2])/((p2[1]-p1[1])^2) )* (x-p1[1])^2+p1[2];</text>
      </feedbackvariables>
      <node>
        <name>0</name>
        <description></description>
        <answertest>NumAbsolute</answertest>
        <sans>f(a1)</sans>
        <tans>0</tans>
        <testoptions>0.1</testoptions>
        <quiet>0</quiet>
        <truescoremode>=</truescoremode>
        <truescore>0.5</truescore>
        <truepenalty></truepenalty>
        <truenextnode>1</truenextnode>
        <trueanswernote>prt1-1-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Nullstelle {@a1@} richtig getroffen.</p>]]></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>1</falsenextnode>
        <falseanswernote>prt1-1-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Nullstelle {@a1@} nicht getroffen.</p>]]></text>
        </falsefeedback>
      </node>
      <node>
        <name>1</name>
        <description></description>
        <answertest>NumAbsolute</answertest>
        <sans>f(b1)</sans>
        <tans>0</tans>
        <testoptions>0.1</testoptions>
        <quiet>0</quiet>
        <truescoremode>+</truescoremode>
        <truescore>0.5</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-2-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Nullstelle {@b1@} richtig getroffen.</p>]]></text>
        </truefeedback>
        <falsescoremode>-</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-2-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Nullstelle {@b1@} nicht getroffen.</p>]]></text>
        </falsefeedback>
      </node>
    </prt>
  </question>

<!-- question: 8382981  -->
  <question type="stack">
    <name>
      <text>Nullstellen Multiple Choice</text>
    </name>
    <questiontext format="html">
      <text><![CDATA[<p>Bitte kreuzen Sie alle Nullstellen des Polynoms \(P(x)={@P1@}\) an.</p>
<p>[[input:ans1]] [[validation:ans1]]</p>
[[feedback:prt1]]]]></text>
    </questiontext>
    <generalfeedback format="html">
      <text></text>
    </generalfeedback>
    <defaultgrade>1.0000000</defaultgrade>
    <penalty>0.1000000</penalty>
    <hidden>0</hidden>
    <idnumber></idnumber>
    <stackversion>
      <text>2024012900</text>
    </stackversion>
    <questionvariables>
      <text>/*
Die Aufgabe „Nullstellen Multiple Choice“ (ursprünglicher Titel: „Nullstellen MC“) von Michael Kallweit und Jonas Lache, Fakultät für Mathematik, Ruhr-Universität Bochum, ist lizenziert unter einer CC BY-SA 4.0 International Lizenz (https://creativecommons.org/licenses/by-sa/4.0/). Die vorliegende Version wurde von Jonas Lache, Team E-Learning@Hochschule Ruhr West überarbeitet (letzte Änderung: 26.07.2024).
*/

P1: expand(2*(x-1)*(x-2));
TA: set(1,2);
Liste: [[1,true],[2,true],[-1,false],[-2,false]];
Liste: random_permutation(Liste);</text>
    </questionvariables>
    <specificfeedback format="html">
      <text></text>
    </specificfeedback>
    <questionnote>
      <text>{@Liste@}</text>
    </questionnote>
    <questiondescription format="html">
      <text></text>
    </questiondescription>
    <questionsimplify>1</questionsimplify>
    <assumepositive>0</assumepositive>
    <assumereal>0</assumereal>
    <prtcorrect format="html">
      <text>Richtige Antwort, gut gemacht!</text>
    </prtcorrect>
    <prtpartiallycorrect format="html">
      <text>Ihre Antwort ist teilweise korrekt.</text>
    </prtpartiallycorrect>
    <prtincorrect format="html">
      <text>Falsche Antwort.</text>
    </prtincorrect>
    <decimals>.</decimals>
    <multiplicationsign>dot</multiplicationsign>
    <sqrtsign>1</sqrtsign>
    <complexno>i</complexno>
    <inversetrig>cos-1</inversetrig>
    <logicsymbol>lang</logicsymbol>
    <matrixparens>[</matrixparens>
    <variantsselectionseed></variantsselectionseed>
    <input>
      <name>ans1</name>
      <type>checkbox</type>
      <tans>Liste</tans>
      <boxsize>15</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>0</mustverify>
      <showvalidation>0</showvalidation>
      <options></options>
    </input>
    <prt>
      <name>prt1</name>
      <value>1.0000000</value>
      <autosimplify>1</autosimplify>
      <feedbackstyle>1</feedbackstyle>
      <feedbackvariables>
        <text>SA: setify(ans1);</text>
      </feedbackvariables>
      <node>
        <name>0</name>
        <description></description>
        <answertest>Sets</answertest>
        <sans>SA</sans>
        <tans>TA</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>=</truescoremode>
        <truescore>1</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-1-T</trueanswernote>
        <truefeedback format="html">
          <text></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-1-F</falseanswernote>
        <falsefeedback format="html">
          <text></text>
        </falsefeedback>
      </node>
    </prt>
  </question>

<!-- question: 8382975  -->
  <question type="stack">
    <name>
      <text>Nullstellen bestimmen</text>
    </name>
    <questiontext format="html">
      <text><![CDATA[<p>Gegeben sei das Polynom \(P(x)={@P1@}\). Geben Sie alle Nullstellen von \(P\) an.</p>
<p>Bitte geben Sie die Lösung als Menge an, z. B. <code>{1,2,3}</code>.</p>
<p>Antwort: [[input:ans1]] [[validation:ans1]]</p>
[[feedback:prt1]]]]></text>
    </questiontext>
    <generalfeedback format="html">
      <text></text>
    </generalfeedback>
    <defaultgrade>1.0000000</defaultgrade>
    <penalty>0.1000000</penalty>
    <hidden>0</hidden>
    <idnumber></idnumber>
    <stackversion>
      <text>2024012900</text>
    </stackversion>
    <questionvariables>
      <text>/*
Die Aufgabe „Nullstellen bestimmen“ von Michael Kallweit und Jonas Lache, Fakultät für Mathematik, Ruhr-Universität Bochum, ist lizenziert unter einer CC BY-SA 4.0 International Lizenz (https://creativecommons.org/licenses/by-sa/4.0/). Die vorliegende Version wurde von Jonas Lache, Team E-Learning@Hochschule Ruhr West überarbeitet (letzte Änderung: 26.07.2024).
*/

n1: rand_with_prohib(-7,7,[0]);
n2: rand_with_prohib(-7,7,[0,n1,-n1]);
n3: rand_with_prohib(-7,7,[0,n1,-n1,n2,-n2]);

P1: expand((x-n1)*(x-n2)*(x-n3));

TA: set(n1,n2,n3);</text>
    </questionvariables>
    <specificfeedback format="html">
      <text></text>
    </specificfeedback>
    <questionnote>
      <text><![CDATA[<p>Gegeben sei das Polynom \(P(x)={@P1@}\). Geben Sie alle Nullstellen von \(P\) an.</p>]]></text>
    </questionnote>
    <questiondescription format="html">
      <text></text>
    </questiondescription>
    <questionsimplify>1</questionsimplify>
    <assumepositive>0</assumepositive>
    <assumereal>0</assumereal>
    <prtcorrect format="html">
      <text>Richtige Antwort, gut gemacht!</text>
    </prtcorrect>
    <prtpartiallycorrect format="html">
      <text>Ihre Antwort ist teilweise korrekt.</text>
    </prtpartiallycorrect>
    <prtincorrect format="html">
      <text>Falsche Antwort.</text>
    </prtincorrect>
    <decimals>.</decimals>
    <multiplicationsign>dot</multiplicationsign>
    <sqrtsign>1</sqrtsign>
    <complexno>i</complexno>
    <inversetrig>cos-1</inversetrig>
    <logicsymbol>lang</logicsymbol>
    <matrixparens>[</matrixparens>
    <variantsselectionseed></variantsselectionseed>
    <input>
      <name>ans1</name>
      <type>algebraic</type>
      <tans>TA</tans>
      <boxsize>15</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>1</mustverify>
      <showvalidation>1</showvalidation>
      <options></options>
    </input>
    <prt>
      <name>prt1</name>
      <value>1.0000000</value>
      <autosimplify>0</autosimplify>
      <feedbackstyle>1</feedbackstyle>
      <feedbackvariables>
        <text></text>
      </feedbackvariables>
      <node>
        <name>0</name>
        <description></description>
        <answertest>AlgEquiv</answertest>
        <sans>ans1</sans>
        <tans>TA</tans>
        <testoptions></testoptions>
        <quiet>1</quiet>
        <truescoremode>=</truescoremode>
        <truescore>1</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-1-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Super! Sie haben die Nullstellen korrekt angegeben!</p>]]></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-1-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Leider haben Sie nicht die korrekten Nullstellen angegeben.</p>]]></text>
        </falsefeedback>
      </node>
    </prt>
    <deployedseed>1693959548</deployedseed>
    <deployedseed>147432109</deployedseed>
    <deployedseed>682202514</deployedseed>
    <deployedseed>720723729</deployedseed>
    <deployedseed>669256101</deployedseed>
    <deployedseed>1007566346</deployedseed>
    <deployedseed>569365113</deployedseed>
    <deployedseed>1459723392</deployedseed>
    <deployedseed>503641686</deployedseed>
    <deployedseed>667416153</deployedseed>
    <deployedseed>2106001830</deployedseed>
    <deployedseed>1535573783</deployedseed>
    <deployedseed>1107313410</deployedseed>
  </question>

<!-- question: 8382977  -->
  <question type="stack">
    <name>
      <text>Umkehraufgabe Nullstellen</text>
    </name>
    <questiontext format="html">
      <text><![CDATA[<p>Geben Sie ein Polynom dritten Grades an, das \(x={@x1@}\) als Nullstelle hat.</p>
<p>Antwort: \(P(x)=\) [[input:ans1]] [[validation:ans1]]</p>
[[feedback:prt1]]]]></text>
    </questiontext>
    <generalfeedback format="html">
      <text></text>
    </generalfeedback>
    <defaultgrade>1.0000000</defaultgrade>
    <penalty>0.1000000</penalty>
    <hidden>0</hidden>
    <idnumber></idnumber>
    <stackversion>
      <text>2024012900</text>
    </stackversion>
    <questionvariables>
      <text>/*
Die Aufgabe „Umkehraufgabe Nullstellen“ (ursprünglicher Titel: „Nst gegeben, Polynom angeben“) von Michael Kallweit und Jonas Lache, Fakultät für Mathematik, Ruhr-Universität Bochum, ist lizenziert unter einer CC BY-SA 4.0 International Lizenz (https://creativecommons.org/licenses/by-sa/4.0/). Die vorliegende Version wurde von Jonas Lache, Team E-Learning@Hochschule Ruhr West überarbeitet (letzte Änderung: 26.07.2024).
*/

x1: rand_with_prohib(-5,5,[0]);
ta: expand((x1-x)*x^2);</text>
    </questionvariables>
    <specificfeedback format="html">
      <text></text>
    </specificfeedback>
    <questionnote>
      <text>{@x1@}</text>
    </questionnote>
    <questiondescription format="html">
      <text></text>
    </questiondescription>
    <questionsimplify>1</questionsimplify>
    <assumepositive>0</assumepositive>
    <assumereal>0</assumereal>
    <prtcorrect format="html">
      <text>Richtige Antwort, gut gemacht!</text>
    </prtcorrect>
    <prtpartiallycorrect format="html">
      <text>Ihre Antwort ist teilweise korrekt.</text>
    </prtpartiallycorrect>
    <prtincorrect format="html">
      <text>Falsche Antwort.</text>
    </prtincorrect>
    <decimals>.</decimals>
    <multiplicationsign>dot</multiplicationsign>
    <sqrtsign>1</sqrtsign>
    <complexno>i</complexno>
    <inversetrig>cos-1</inversetrig>
    <logicsymbol>lang</logicsymbol>
    <matrixparens>[</matrixparens>
    <variantsselectionseed></variantsselectionseed>
    <input>
      <name>ans1</name>
      <type>algebraic</type>
      <tans>ta</tans>
      <boxsize>15</boxsize>
      <strictsyntax>1</strictsyntax>
      <insertstars>0</insertstars>
      <syntaxhint></syntaxhint>
      <syntaxattribute>0</syntaxattribute>
      <forbidwords></forbidwords>
      <allowwords></allowwords>
      <forbidfloat>0</forbidfloat>
      <requirelowestterms>0</requirelowestterms>
      <checkanswertype>0</checkanswertype>
      <mustverify>1</mustverify>
      <showvalidation>1</showvalidation>
      <options></options>
    </input>
    <prt>
      <name>prt1</name>
      <value>1.0000000</value>
      <autosimplify>1</autosimplify>
      <feedbackstyle>1</feedbackstyle>
      <feedbackvariables>
        <text>ist_polynom: polynomialp(ans1,[x]);
grad: hipow(expand(ans1),x);
f1: subst(x=x1,ans1);</text>
      </feedbackvariables>
      <node>
        <name>0</name>
        <description>Ist die Antwort ein Polynom?</description>
        <answertest>AlgEquiv</answertest>
        <sans>ist_polynom</sans>
        <tans>true</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>=</truescoremode>
        <truescore>0</truescore>
        <truepenalty></truepenalty>
        <truenextnode>1</truenextnode>
        <trueanswernote>prt1-1-T</trueanswernote>
        <truefeedback format="html">
          <text></text>
        </truefeedback>
        <falsescoremode>=</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>3</falsenextnode>
        <falseanswernote>prt1-1-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Der von Ihnen angegebene Ausdruck \(P(x)={@ans1@}\) ist kein Polynom nach \(x\).</p>]]></text>
        </falsefeedback>
      </node>
      <node>
        <name>1</name>
        <description>Hat das Polynom Grad 3?</description>
        <answertest>AlgEquiv</answertest>
        <sans>grad</sans>
        <tans>3</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>+</truescoremode>
        <truescore>0.2</truescore>
        <truepenalty></truepenalty>
        <truenextnode>2</truenextnode>
        <trueanswernote>prt1-2-T</trueanswernote>
        <truefeedback format="html">
          <text></text>
        </truefeedback>
        <falsescoremode>-</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>3</falsenextnode>
        <falseanswernote>prt1-2-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Das von Ihnen angegebene Polynom \(P(x)={@ans1@}\) ist nicht wie gefordert dritten Grades, sondern hat stattdessen Grad {#grad#}.</p>]]></text>
        </falsefeedback>
      </node>
      <node>
        <name>2</name>
        <description>Stimmt die Nullstelle? (Polynom 3. Grades)</description>
        <answertest>AlgEquiv</answertest>
        <sans>f1</sans>
        <tans>0</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>+</truescoremode>
        <truescore>0.8</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-3-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Super, das von Ihnen angegebene Polynom \(P(x)={@ans1@}\) hat wie gefordert Grad 3 und eine Nullstelle bei \(x={@x1@}\)!</p>]]></text>
        </truefeedback>
        <falsescoremode>-</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-3-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Leider hat das von Ihnen angegebene Polynom \(P(x)={@ans1@}\) keine Nullstelle bei \(x={@x1@}\). Wäre dies der Fall, müsste ja \(P({@x1@})=0\) gelten. Es gilt aber \(P({@x1@})={@f1@}\).</p>]]></text>
        </falsefeedback>
      </node>
      <node>
        <name>3</name>
        <description>Stimmt die Nullstelle? (kein Polynom 3. Grades)</description>
        <answertest>AlgEquiv</answertest>
        <sans>f1</sans>
        <tans>0</tans>
        <testoptions></testoptions>
        <quiet>0</quiet>
        <truescoremode>+</truescoremode>
        <truescore>0.3</truescore>
        <truepenalty></truepenalty>
        <truenextnode>-1</truenextnode>
        <trueanswernote>prt1-4-T</trueanswernote>
        <truefeedback format="html">
          <text><![CDATA[<p>Allerdings hat die von Ihnen angegebene Funktion \(P(x)={@ans1@}\) eine Nullstelle bei \(x={@x1@}\), wie es gefordert war.</p>]]></text>
        </truefeedback>
        <falsescoremode>-</falsescoremode>
        <falsescore>0</falsescore>
        <falsepenalty></falsepenalty>
        <falsenextnode>-1</falsenextnode>
        <falseanswernote>prt1-4-F</falseanswernote>
        <falsefeedback format="html">
          <text><![CDATA[<p>Leider hat die von Ihnen angegebene Funktion \(P(x)={@ans1@}\) auch keine Nullstelle bei \(x={@x1@}\). Wäre dies der Fall, müsste ja \(P({@x1@})=0\) gelten. Es gilt aber \(P({@x1@})={@f1@}\).<br></p>]]></text>
        </falsefeedback>
      </node>
    </prt>
  </question>

</quiz>