分数减法闯关:用随机题目验证答案

分数减法闯关:用随机题目验证答案
几何画板及绘图内容加载中,请稍等……
2023-01-30 20:40
该范例演示在“迷宫/关卡”界面中进行分数减法练习:系统随机生成题目与提示位置,学生在指定区域作答并进行自动校验。核心数学概念是分数减法及其正确结果的分子分母计算(对应“减法运算#subtraction”“Subtrahieren von Brüchen”),并将结果规范为可对比的分数形式。作图与交互要点包括:通过 Shuffle 与 Sequence 生成随机数 randomNumbers、randomNumber,并用 Length、Element、Flatten 组织题目参数与题目位置;利用 If 进行条件判断,IsInRegion 判断学生答案是否落在正确区域;用 Textfield/Text 显示题干 txtQuestion、任务位置 txtTaskPositions、提示 txtHints2 与作答反馈;分子分母分别用 Numerator/Denominator 组织 expec

GeoGebra 命令及参数

  1. Shuffle(1…10) → randomNumbers, {5, 3, 10, 2, 1, 4, 9, 8, 7, 6}
  2. Element(randomNumbers, Mod[questionCount, Length[randomNumbers]] + 1) → randomNumber
  3. Element(Element[allSolutionsSplitted, randomNumber], 2) → expectedSolutionZaehler
  4. Element(Element[allSolutionsSplitted, randomNumber], 3) → expectedSolutionNenner
  5. Element(Element[allSolutionsSplitted, randomNumber], 1) → expectedSolutionGanze
  6. If(Defined[expectedSolutionGanze], expectedSolutionGanze + expectedSolutionZaehler / expectedSolutionNenner, expectedSolutionZaehler / expectedSolutionNenner) → expectedSolutionValue
  7. Flatten({labyrinthW01, labyrinthW02, labyrinthW03, labyrinthW04}) → labyrinthWaagrecht
  8. Flatten({labyrinthS01, labyrinthS02, labyrinthS03, labyrinthS04}) → labyrinthSenkrecht
  9. Flatten({labyrinthSenkrecht, labyrinthWaagrecht}) → labyrinth
  10. Length(randomNumbers) → numberOfQuestions
  11. Sequence(Polygon[Element[questionsPositions, i], Element[questionsPositions, i] + sizeWaagrecht, Element[questionsPositions, i] + sizeWaagrecht + sizeSenkrecht, Element[questionsPositions, i] + sizeSenkrecht], i, 1, Length[questionsPositions]) → questionsRectangles
  12. IsInRegion(A, Element[questionsRectangles, actualQuestionNeeded]) → showQuestion
  13. Textfield(studentAnswer01) → inputBox01
  14. Textfield(studentAnswer02) → inputBox02
  15. Textfield(studentAnswer03) → inputBox03
  16. Text("\textsf{" + (Element[allTasks, randomNumber]) + "}", txtTaskPosition, true, true, -1, 0) → txtTask
  17. If((¬needGanze) ∧ needBruch, 0, 1) → startPositionBruchXValue
  18. Text("\textsf{" + (Element[allQuestions, randomNumber]) + "}", txtQuestionPos, true, true, -1, 0) → Text1
  19. Numerator(studentAnswer02 / studentAnswer03) → studentAnswer02gekurzt
  20. Denominator(studentAnswer02 / studentAnswer03) → studentAnswer03gekurzt
  21. Text(Text9, B, false, true, 0, 0) → Text10
  22. Segment(C, D) → f
  23. Segment(E, I) → g
  24. Segment(G, H) → h