$\textsf\textcolor{1565C0}{%v Punkte}$

$\text{Überprüfen}$

$\text{Neuer Versuch}$

$\text{Neue Aufgabe}$

\colorbox{235, 231, 248}{\text{This text shows a hint for the student.\\
It is shown after the second wrong answer\
and is displayed during the third try.}}

No selection allowed for all input boxes

Selection allowed for all input boxes

Fix position and allow selection for all text objects

Empty all input boxes

#EDEDED

\text{Text for just the correct answer.}

\text{Mögliche Lösung:}

\underline\text{Helper scripts for template}

\underline\text{Helper scripts for authors}

$a=$

$b=$

\colorbox{235, 231, 248}{\text{This hint is for typical misconceptions of\students. It is shown after any wrong answer\that shows the typical error.}}

\textsf\colorbox{#ebe7f8}{Mindestens 2 Seiten schneiden sich!}

\textsf\colorbox{#ebe7f8}{Mindestens 2 Punkte liegen übereinander!}

\textsf{\frac{1}{2} \ 
\frac{1}{4} \ 
\frac{3}{4} \ 
\frac{1}{8} \ 
\frac{1}{16}

#006758

#b00020

#e7b3bd

#b3d2cd

$\textsf{Figur einblenden}$

questionCount = 24
ListeBruch = Join({Shuffle[{1, 2}], {5}, Shuffle[{3, 4}], Join[Sequence[Shuffle[{1, 2, 3, 4, 5}], i, 1, 20]]})
ListeNenner: {2, 4, 4, 8, 16}
ListeZähler: {1, 1, 3, 1, 1}
bruch = Element(ListeBruch, questionCount)
nenner = Element(ListeNenner, bruch)
zähler = Element(ListeZähler, bruch)
fractionCorrect: zähler / nenner
PGeoBrettLinksOben = (0, 0)
width: 10
height: 10
area: (width * height)
cells: 4
widthCell: width / cells
heightCell: height / cells
gridPoints = Sequence(Sequence[PGeoBrettLinksOben + ((c * widthCell) * (1, 0)) + ((r * heightCell) * (0, -1)), r, 0, cells], c, 0, cells)
A4 = Point(gridPoints)
A3 = Point(gridPoints)
A2 = Point(gridPoints)
A1 = Point(gridPoints)
Liste4: {A1, A2, A3, A4}
Liste3: {A1, A2, A3}
A5 = Point(gridPoints)
Liste5: {A1, A2, A3, A4, A5}
A6 = Point(gridPoints)
Liste6: {A1, A2, A3, A4, A5, A6}
A7 = Point(gridPoints)
Liste7: {A1, A2, A3, A4, A5, A6, A7}
A8 = Point(gridPoints)
Liste8: {A1, A2, A3, A4, A5, A6, A7, A8}
numPoints = 3 (slider from 3 to 8, step 1)
ListeV = If(numPoints ≟ 3, Unique[Liste3], numPoints ≟ 4, Unique[Liste4], numPoints ≟ 5, Unique[Liste5], numPoints ≟ 6, Unique[Liste6], numPoints ≟ 7, Unique[Liste7], numPoints ≟ 8, Unique[Liste8])
V = Polygon(ListeV)
fraction: V / area
s34 = Segment(A3, A4)
s23 = Segment(A2, A3)
s41 = Segment(A4, A1)
s12 = Segment(A1, A2)
Blue = (-5.32, 4.5)
Green = (-5.28, 3.68)
Orange = (-5.2, 2.86)
Red = (-5.32, 2.04)
Purple = (-5.34, 1.12)
Gray = (-5.34, 0.32)
GrayDark = (-5.36, -0.7)
validate = false
showanswer = false
showsolution = false
attemptCount = -1
correctCount = 0
textCountCorrect: "\text{Richtig gelöste Aufgaben: " + (LaTeX[correctCount]) + " }"
showButtonNew = false
showButtonTryAgain = false
showButtonValidate = true
showhint = false
aInput = NaN
InputBox1 = Textfield(aInput)
bInput = NaN
InputBox2 = Textfield(bInput)
correct: fraction ≟ fractionCorrect
showcorrecttext = false
PtopLeftCornerFeedback = (10, -13)
PbottomRightCornerFeedback = (11.767790441701562, -16.141227631023547)
PtopRightCornerFeedback: (x(PbottomRightCornerFeedback), y(PtopLeftCornerFeedback))
PbottomLeftCornerFeedback: (x(PtopLeftCornerFeedback), y(PbottomRightCornerFeedback))
rectangleCorrect, ptopleftcornerfeedback, ptoprightcornerfeedback, pbottomrightcornerfeedback, pbottomleftcornerfeedback = Polygon(PtopLeftCornerFeedback, PtopRightCornerFeedback, PbottomRightCornerFeedback, PbottomLeftCornerFeedback)
showhinttypicalerror = false
correctText: "\text{" + (LaTeX[If[correct, "✓ Richtig", "✘ Falsch"]]) + "}"
isTypicalError: bInput ≟ aInput + 1
allowCountIncrement = true
horizontalSeperators = Sequence(Segment[gridPoints(1, r), gridPoints(cells + 1, r)], r, 1, cells + 1)
verticalSeperators = Sequence(Segment[gridPoints(r, 1), gridPoints(r, cells + 1)], r, 1, cells + 1)
s45 = Segment(A4, A5)
s56 = Segment(A5, A6)
s67 = Segment(A6, A7)
s78 = Segment(A7, A8)
s81 = Segment(A8, A1)
intersect4: {Intersect[s12, s34], Intersect[s23, s41]}
s31 = Segment(A3, A1)
s51 = Segment(A5, A1)
s61 = Segment(A6, A1)
s71 = Segment(A7, A1)
intersect5: {Intersect[s12, s34], Intersect[s12, s45], Intersect[s23, s45], Intersect[s23, s51], Intersect[s34, s51]}
intersect6: {Intersect[s12, s34], Intersect[s12, s45], Intersect[s12, s56], Intersect[s23, s45], Intersect[s23, s56], Intersect[s23, s61], Intersect[s34, s56], Intersect[s34, s61], Intersect[s45, s61]}
intersect7: {Intersect[s12, s34], Intersect[s12, s45], Intersect[s12, s56], Intersect[s12, s67], Intersect[s23, s45], Intersect[s23, s56], Intersect[s23, s67], Intersect[s23, s71], Intersect[s34, s56], Intersect[s34, s67], Intersect[s34, s71], Intersect[s45, s67], Intersect[s45, s71], Intersect[s56, s71]}
intersect8: {Intersect[s12, s34], Intersect[s12, s45], Intersect[s12, s56], Intersect[s12, s67], Intersect[s12, s78], Intersect[s23, s45], Intersect[s23, s56], Intersect[s23, s67], Intersect[s23, s78], Intersect[s23, s81], Intersect[s34, s56], Intersect[s34, s67], Intersect[s34, s78], Intersect[s34, s81], Intersect[s45, s67], Intersect[s45, s78], Intersect[s45, s81], Intersect[s56, s78], Intersect[s56, s81], Intersect[s67, s81]}
noIntersection = If(numPoints ≟ 4, Length[RemoveUndefined[intersect4]] ≟ 0, numPoints ≟ 5, Length[RemoveUndefined[intersect5]] ≟ 0, numPoints ≟ 6, Length[RemoveUndefined[intersect6]] ≟ 0, numPoints ≟ 7, Length[RemoveUndefined[intersect7]] ≟ 0, numPoints ≟ 8, Length[RemoveUndefined[intersect8]] ≟ 0, true)
noDouble: Length[ListeV] ≟ numPoints
doublePoints: numPoints - Length[ListeV] + 1
ListeGridPoints = Join(gridPoints)
ListeP2: {{}, {}, Element[ListeGridPoints, 19], Element[ListeGridPoints, 19], Element[ListeGridPoints, 19], Element[ListeGridPoints, 15], Element[ListeGridPoints, 15], Element[ListeGridPoints, 15]}
ListeP3: {{}, {}, Element[ListeGridPoints, 9], Element[ListeGridPoints, 9], Element[ListeGridPoints, 9], Element[ListeGridPoints, 9], Element[ListeGridPoints, 3], Element[ListeGridPoints, 3]}
ListeP5: {{}, {}, {}, {}, Element[ListeGridPoints, 11], Element[ListeGridPoints, 11], Element[ListeGridPoints, 6], Element[ListeGridPoints, 6]}
ListeP6: {{}, {}, {}, {}, {}, Element[ListeGridPoints, 17], Element[ListeGridPoints, 16], Element[ListeGridPoints, 12]}
ListeP7: {{}, {}, {}, {}, {}, {}, Element[ListeGridPoints, 22], Element[ListeGridPoints, 16]}
ListeP8: {{}, {}, {}, {}, {}, {}, {}, Element[ListeGridPoints, 22]}
ListeP4: {{}, {}, {}, Element[ListeGridPoints, 6], Element[ListeGridPoints, 7], Element[ListeGridPoints, 7], Element[ListeGridPoints, 2], Element[ListeGridPoints, 2]}
ListeP1: {{}, {}, Element[ListeGridPoints, 17], Element[ListeGridPoints, 16], Element[ListeGridPoints, 17], Element[ListeGridPoints, 19], Element[ListeGridPoints, 23], Element[ListeGridPoints, 23]}
ListeL1: {Element[ListeGridPoints, 21], Element[ListeGridPoints, 21], Element[ListeGridPoints, 21], Element[ListeGridPoints, 21], Element[ListeGridPoints, 21]}
ListeL2: {Element[ListeGridPoints, 25], Element[ListeGridPoints, 23], Element[ListeGridPoints, 25], Element[ListeGridPoints, 22], Element[ListeGridPoints, 22]}
ListeL3: {Element[ListeGridPoints, 15], Element[ListeGridPoints, 13], Element[ListeGridPoints, 10], Element[ListeGridPoints, 12], Element[ListeGridPoints, 17]}
ListeL4: {Element[ListeGridPoints, 11], Element[ListeGridPoints, 11], Element[ListeGridPoints, 6], Element[ListeGridPoints, 11], Element[ListeGridPoints, 16]}
Vsolution, f, g, h, i = Polygon(Element[ListeL1, bruch], Element[ListeL2, bruch], Element[ListeL3, bruch], Element[ListeL4, bruch])
E2 = Vertex(Vsolution, 2)
E1 = Vertex(Vsolution, 1)
E3 = Vertex(Vsolution, 3)
E4 = Vertex(Vsolution, 4)
txtHint01: "\textsf{Deine Figur umspannt " + (LaTeX[FractionText[fraction]]) + " des Geobretts.}"
showFigure = true
questionText: "\text{
Finde eine Figur, die \frac{" + (LaTeX[zähler]) + "}{" + (LaTeX[nenner]) + "} umspannt.
\\Bewege und verändere dazu die Anzahl der blauen Punkte."