Systems of Linear Equations Puzzle

Systems of Linear Equations Puzzle
Loading the math board and drawing, please wait…
2023-02-28 04:15
This activity introduces systems of linear equations through logic puzzles. Students will learn to solve linear equations algebraically. It uses commands like RandomUniform, Take, Element, If, Textfield, Flatten, Sequence, Zip, RemoveUndefined, making it suitable for 6-8 grade students to practice.

GeoGebra Commands & Parameters

  1. RandomUniform(0, 0.99, 200) → allRandomSeeds, {0.40433700651860893, 0.112701665048636, 0.43786519359241144, 0.13453724759274702, 0.06192297921637483, 0.8915034755135657, 0.6466506560403794, 0.6808468711017576, 0.8593474775407397, 0.4602142629884519, 0.6559903247648702, 0.6534812608944176, 0.25210776828740494, 0.10870077884298113, 0.5064554469577719, 0.9872562139275634, 0.2529367233101544, 0.05661461464449197, 0.2491244284025733, 0.9706394614637479, 0.5989872230700475, 0.24533268797746025, 0.4676445851080821, 0.7561921318249966, 0.328526224935492, 0.8536214014243046, 0.11377039947113653, 0.0055152838615534616, 0.7443566745298374, 0.7922279173159801, 0.7138448513349351, 0.5575530257792992, 0.011916857223985961, 0.384506523957501, 0.1486416964904676, 0.5139757771941219, 0.10667754830806861, 0.3955297208793514, 0.7048752848295406, 0.37867874722312533, 0.5980645182749853, 0.060912731055820776, 0.6035109867985163, 0.17017811806094382, 0.12567843963426972, 0.10879766011184097, 0.5577719810463939, 0.22587286613416155, 0.05806743995363438, 0.09409681092395178, 0.4924407657509772, 0.025763946125180105, 0.7647266937457412, 0.09318732623310333, 0.2056909655165735, 0.950282258052023, 0.16835746430482218, 0.6897782149670819, 0.005262568304296941, 0.06237546787746418, 0.24671253530781573, 0.6286376164156512, 0.4223059334997308, 0.8779388204297942, 0.9115876041598543, 0.703272648929759, 0.238672560537199, 0.3110486940580416, 0.31668798579449176, 0.7264956535720677, 0.14681813592483736, 0.9012676308505371, 0.4062077525596964, 0.03909046483166584, 0.7458101664384525, 0.5195379702140152, 0.7620026196991775, 0.7515084843344814, 0.6321958432792921, 0.24686668944750553, 0.05922120592275738, 0.44667929254591, 0.6006873478663752, 0.5061268929419303, 0.8281785829370629, 0.8586117261473274, 0.45676002617794786, 0.03186253593016289, 0.03411366642704248, 0.6014910764088042, 0.011335362657519082, 0.6159799999507874, 0.6662668874284856, 0.16744464473143283, 0.33673416371652104, 0.28864678766576696, 0.07344726314137161, 0.41805249101402464, 0.7530365966618042, 0.9535900535809495, 0.15492719131863758, 0.8550212206262406, 0.2948746634433723, 0.14529791134684808, 0.1731117663246547, 0.0892192187513365, 0.9705081102796802, 0.2923756673416958, 0.6079732927291471, 0.8044871655130715, 0.697799560643654, 0.2064931788053683, 0.8027249222137118, 0.38329311487530116, 0.9354046649282988, 0.7599838369402704, 0.27562656862510987, 0.27539239539371646, 0.11213259298402116, 0.48721552518800276, 0.6341743851376955, 0.08818236648433783, 0.9530080396619998, 0.8853520737326576, 0.5352193432826327, 0.7884086926689375, 0.007079499467599023, 0.36905969209557327, 0.877793284920726, 0.5992840916318181, 0.5794699091770811, 0.431084974983695, 0.31459067610308206, 0.404922248593043, 0.8385543552266583, 0.36644280908948434, 0.8231616187438786, 0.17526921203479676, 0.6384756318796153, 0.0921996559519927, 0.09891653113087882, 0.7194307517644389, 0.037472488683625856, 0.7875235380055781, 0.11902574883860291, 0.23344925950823053, 0.8636957988100211, 0.17979512159773559, 0.48921654510626034, 0.5401748100172966, 0.6923275934538607, 0.5421349998629293, 0.8043281140458913, 0.7639047504362647, 0.10089309125717022, 0.6756997595183689, 0.3282796735810703, 0.9809331427159179, 0.36367010522213644, 0.5865358227141658, 0.3698392522114043, 0.7990547957845157, 0.3110514232490109, 0.34165214255136866, 0.6472508212878754, 0.4044116479881559, 0.005603873256348059, 0.9022841983014703, 0.04738460287853601, 0.3228476916060517, 0.02339464383772005, 0.7340694185380656, 0.14362068465794292, 0.47515553848900505, 0.9469186319787978, 0.94403944076242, 0.3011579585913105, 0.2512523714511674, 0.7546619007596369, 0.43295835029445456, 0.8188609495587554, 0.2774146133503415, 0.7019751473610105, 0.8685959278737445, 0.2931139678844169, 0.3332298091630006, 0.6585069182597671, 0.6810233054111836, 0.08144716803556845, 0.25089123608774483, 0.608960403417007, 0.11495399921398156, 0.5219318016827421, 0.018864895187589947, 0.4063883865500811, 0.3165261777918305, 0.31851116946076846, 0.32480060667551824, 0.9206299912279065, 0.05273256633983858}
  2. Take(allRandomSeeds, randIndex, randIndex + numRandoms - 1) → currentRandomSeeds
  3. Element(Sequence[-10, 10], 1 + floor((currentRandomSeeds(1) * 21))) → hardA
  4. If(countQuestion < 3, 1, If[countQuestion < 6, 2, If[countQuestion < 9, 3, 4]]) → currentLevel
  5. Element({easyA, hardA, easyA, hardA}, currentLevel) → numA
  6. Element(Remove[Sequence[1, 10], {easyA}], 1 + floor((currentRandomSeeds(2) * 9))) → easyB
  7. Element(Remove[Sequence[-10, 10], {hardA}], 1 + floor((currentRandomSeeds(2) * 20))) → hardB
  8. Element({easyB, hardB, easyB, hardB}, currentLevel) → numB
  9. Element(Remove[Sequence[1, 10], {easyA, easyB}], 1 + floor((currentRandomSeeds(3) * 8))) → easyC
  10. Element(Remove[Sequence[-10, 10], {hardA, hardB}], 1 + floor((currentRandomSeeds(3) * 19))) → hardC
  11. Element({easyC, hardC, easyC, hardC}, currentLevel) → numC
  12. Textfield(input1) → InputBox1
  13. Textfield(input2) → InputBox2
  14. Element(Remove[{1, 2, 3}, {shapeA}], 1 + floor((currentRandomSeeds(8) * 2))) → shapeB
  15. Element(Remove[{1, 2, 3}, {shapeA, shapeB}], 1) → shapeC
  16. Flatten(Sequence[Sequence[(45 + (i * boxWidth), ((-xyRatio) * 150) - (j * boxWidth)), i, 1, 3], j, 0, 2]) → anchorBoxes
  17. If(currentLevel ≤ 2, Element[{1, 2, 3}, 1 + floor((currentRandomSeeds(4) * 3))], NaN) → sameCol
  18. Sequence(1 + floor((currentRandomSeeds(A) * 3)), A, 6, 14) → randomOptions, {3, 2, 3, 3, 2, 2, 2, 1, 1}
  19. Zip(anchorBoxes(A) + ((3 * boxWidth), 0), A, {3, 6, 9}) → anchorSymbols
  20. Textfield(input3) → InputBox3
  21. Zip(A ≟ B, A, inputCurrent, B, currentNums) → checkShapes
  22. Element(Remove[{1, 2, 3}, {numA}], 1 + floor((currentRandomSeeds(2) * 2))) → indexB
  23. Sequence(Sequence[Element[{numA, numB, numC}, currentOrder(J, K)], K, 1, 3], J, 1, 3) → allNumbers, {{5, 5, 5}, {6, 5, 2}, {2, 6, 2}}
  24. Sequence(allNumbers(A, 1) + allNumbers(A, 2) + allNumbers(A, 3), A, 1, 3) → rowTotals, {15, 13, 10}
  25. Sequence(allNumbers(1, A) + allNumbers(2, A) + allNumbers(3, A), A, 1, 3) → colTotals, {13, 16, 9}
  26. Flatten(currentOrder) → flattenedOrder
  27. RemoveUndefined(Sequence[If[flattenedOrder(A) ≟ shapeB, anchorBoxes(A)], A, 1, Length[anchorBoxes]]) → shapeBLocations
  28. Zip(Circle[A, shapeWidth / 2], A, shapeBLocations) → allShapeB
  29. RemoveUndefined(Sequence[If[flattenedOrder(A) ≟ shapeC, anchorBoxes(A)], A, 1, Length[anchorBoxes]]) → shapeCLocations
  30. Zip(Polygon[A + (0, shapeWidth / 2), Rotate[A + (0, shapeWidth / 2), pi / 3, A], 6], A, shapeCLocations) → allShapeC
  31. RemoveUndefined(Sequence[If[flattenedOrder(A) ≟ shapeA, anchorBoxes(A)], A, 1, Length[anchorBoxes]]) → shapeALocations
  32. Zip(centerBox[shapeWidth, shapeWidth, A], A, shapeALocations) → allShapeA
  33. centerBox(shapeWidth, shapeWidth, anchorSymbols(1)) → legendShapeA
  34. Polygon(anchorSymbols(3) + (0, shapeWidth / 2), Rotate[anchorSymbols(3) + (0, shapeWidth / 2), pi / 3, anchorSymbols(3)], 6) → legendShapeC
  35. Circle(anchorSymbols(2), shapeWidth / 2) → legendShapeB
  36. Zip(Text[("\vphantom{-}" * A), B - (0, (xyRatio * boxWidth / 2)), true, true, 0, -1], A, colTotals, B, {anchorBoxes(7), anchorBoxes(8), anchorBoxes(9)}) → displayColTotals
  37. Zip((x(anchorBoxes(A)) + (3.5 * boxWidth) - 10, y(anchorBoxes(A)) + (xyRatio * 10)), A, {3, 6, 9}) → anchorInputs
  38. Zip(centerBox[boxWidth, boxWidth, A], A, anchorBoxes) → puzzleFrame
  39. Text("\text{Totals}", anchorBoxes(7) - (boxWidth / 2, (xyRatio * boxWidth / 2)), true, true, -1, -1) → lblTotalCol
  40. Zip(Text[("\vphantom{-}" * currentNums(shapeA)), A, false, true, 0, 0], A, shapeALocations) → shapeALabels
  41. Zip(Text[("\vphantom{-}" * currentNums(shapeB)), A, false, true, 0, 0], A, shapeBLocations) → shapeBLabels
  42. Zip(Text[("\vphantom{-}" * currentNums(shapeC)), A, false, true, 0, 0], A, shapeCLocations) → shapeCLabels
  43. TableText(rowTotals, "v") → testSize
  44. Zip(Text[("" * A), B + (offsetTotals, 0), false, true, -1, 0], A, rowTotals, B, {anchorBoxes(3), anchorBoxes(6), anchorBoxes(9)}) → displayRowTotals
  45. Text("\text{Totals}", anchorBoxes(3) + (boxWidth - (10 * (xMax - xMin) / PXwidth), (xyRatio * boxWidth / 2)), true, true, 0, 1) → lblTotalRow

AI Drawing Prompt Reference

This is a graphic with a grid, shapes, input boxes, labels, and total displays. The grid consists of boxes, shapes such as circles and triangles are placed on the grid, input boxes are located on the grid for entering numbers, labels show shape names, and totals are displayed on the grid. The construction order is: first draw the grid, then place shapes, create input boxes, add labels and total displays.
The prompt above was compiled from the original drawing commands and is for reference only.