Fraction Comparison Assessment

Fraction Comparison Assessment
Loading the math board and drawing, please wait…
2015-12-16 03:04
This example demonstrates how to compare randomly generated fractions, involving the core mathematical concepts of fractions and arithmetic. Using GeoGebra commands like Numerator, Denominator, If, RandomElement, users can dynamically change the numerators and denominators of fractions to observe their size relationships. Suitable for high-grade elementary and junior high school students to learn and practice fraction comparison.

GeoGebra Commands & Parameters

  1. Numerator(first) → num1
  2. Denominator(first) → den1
  3. If(den1 ≟ 1, RandomElement[{1, Random[1, 12 / den1]}], Random[2, 12 / den1]) → EQmult
  4. RandomElement(Remove[{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}, {num1, den1}]) → changenumtop
  5. RandomElement(Remove[{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}, {den1, num1}]) → changedenbottom
  6. FractionText(num1 / den1) → FirstText
  7. FractionText(den1 / num1) → reciprocal
  8. RandomElement(Remove[{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}, {num1}]) → randtop
  9. RandomElement(Remove[{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}, {den1}]) → ranbottom
  10. If(first ≟ 1, RandomElement[{"changeden", "changenum", "equiv", "rand"}], If[den1 ≟ 1, RandomElement[{"changeden", "reciprocal", "equiv", "rand"}], RandomElement[{"changeden", "changenum", "equiv", "rand", "reciprocal"}]]) → changetype
  11. If(changetype ≟ "rand", rand, If[changetype ≟ "changeden", changeden, If[changetype ≟ "changenum", changenum, If[changetype ≟ "reciprocal", reciprocal, If[changetype ≟ "equiv", equiv, rand]]]]) → SecondText
  12. RandomElement({FirstText, SecondText}) → Left
  13. If(Left ≟ FirstText, SecondText, FirstText) → Right
  14. If(changetype ≟ "rand", randtop / ranbottom, If[changetype ≟ "changeden", num1 / changedenbottom, If[changetype ≟ "changenum", changenumtop / den1, If[changetype ≟ "reciprocal", den1 / num1, If[changetype ≟ "equiv", first, rand]]]]) → second
  15. If(FirstText ≟ Left, first, second) → leftvalue
  16. If(FirstText ≟ Left, second, first) → rightvalue
  17. TableText({{"Type of Change", "Different Numerator", "Different Denominator", "Reciprocal", "Equivalent", "Random", "Total"}, {"Number Correct", CNR, CDR, RR, ER, randR, totalR}, {"Number Incorrect", CNW, CDW, RW, EW, randW, totalW}, {"Percent Correct", (CNR / (CNR + CNW) * 100) + "%", (CDR / (CDR + CDW) * 100) + "%", (RR / (RW + RR) * 100) + "%", (ER / (ER + EW) * 100) + "%", (randR / (randR + randW) * 100) + "%", (totalR / total * 100) + "%"}}, "|11000011_11011ch") → text4
  18. Element({5, 10, 20, 30, 45, Infinity}, questions) → numberofquestions
  19. Element({1 / 3, 1 / 6, 1 / 12, 1 / 18, 1 / 24, 1 / 30}, time) → slidersetting
  20. Element({"30 seconds", "1 minute", "2 minutes", "3 minutes", "4 minutes", "5 minutes"}, time) → timetext
  21. If(a, timer ≟ 100, total ≥ numberofquestions) → DONE
  22. Append("Fraction A", Take[leftlist, 1, If[total ≥ 15, 15, total]]) → left1
  23. Append("Fraction A", Take[leftlist, 16, If[total ≥ 30, 30, total]]) → left2
  24. Append("Fraction A", Take[leftlist, 31, total]) → left3
  25. Append("Fraction A", Take[rightlist, 1, If[total ≥ 15, 15, total]]) → right1
  26. Append("Fraction A", Take[rightlist, 16, If[total ≥ 30, 30, total]]) → right2
  27. Append("Fraction A", Take[rightlist, 31, total]) → right3
  28. Append("Correct Answer", Take[trueanswerlist, 1, If[total ≥ 15, 15, total]]) → true1
  29. Append("Correct Answer", Take[trueanswerlist, 16, If[total ≥ 30, 30, total]]) → true2
  30. Append("Correct Answer", Take[trueanswerlist, 31, total]) → true3
  31. Append("Your Answer", Take[inputlist, 1, If[total ≥ 15, 15, total]]) → input1
  32. Append("Your Answer", Take[inputlist, 16, If[total ≥ 30, 30, total]]) → input2
  33. Append("Your Answer", Take[inputlist, 31, total]) → input3
  34. TableText({left1, right1, input1, true1}, "c_|||v") → table1
  35. TableText({left2, right2, input2, true2}, "c_||v") → table2
  36. TableText({left3, right3, input3, true3}, "c_|||v") → table3
  37. TableText({{Left, " ", Right}, "c"}) → text2
  38. TableText({Append["Fraction A", leftlist], Append["Fraction B", rightlist], Append["Your answer", inputlist], Append["Correct answer", trueanswerlist]}, "c_|||v") → text1