解二元线性不等式(自我导向练习)

解二元线性不等式(自我导向练习)
几何画板及绘图内容加载中,请稍等……
2020-03-29 17:46
这个范例演示了如何在 GeoGebra 中绘制和解决二元线性不等式,通过图形直观展示不等式的解集区域。涉及的核心数学概念包括不等式、线性方程和区域表示。作图要点使用了 GeoGebra 命令如 Solve, Segment, Polygon, Min, Max 等,适合高中数学学习和自主练习。

GeoGebra 命令及参数

  1. TextToUnicode(Text[c_1]) → lc_1
  2. Sequence(If[Defined[IndexOf[Element[listIneqsym_1, n], lc_1]], IndexOf[Element[listIneqsym_1, n], lc_1], 0], n, 1, 4) → clsr1_1
  3. If(Length[clsr1_1] - Sum[Sequence[If[Element[clsr1_1, t] ≟ 0, 1, 0], t, 1, 4]] < 2, Sequence[If[Defined[IndexOf[Element[listIneqsym_1, n], lc_1, Sum[clsr1_1] + 1]], IndexOf[Element[listIneqsym_1, n], lc_1, Sum[clsr1_1] + 1], 0], n, 1, 4], {0, 0, 0, 0}) → clsr2_1
  4. Element({f1(x) < f0(x), f1(x) ≤ f0(x), f1(x) > f0(x), f1(x) ≥ f0(x)}, counttb1) → ineq1
  5. Textfield(txtInputf1) → InputBox1
  6. Textfield(txtInputg1) → InputBox2
  7. Textfield(txtInputf0) → InputBox3
  8. Text(Element[listtb1Ineq, counttb1]) → txtboxlistIneq1
  9. Text(Element[listtb2Ineq, counttb2]) → txtboxlistIneq2
  10. Element({f0(x) < g1(x), f0(x) ≤ g1(x), f0(x) > g1(x), f0(x) ≥ g1(x)}, counttb2) → ineq2
  11. Solve(ineq2) → ineq2solved
  12. Solve(ineq1) → ineq1solved
  13. Element(ineq2solved, 1) → a_2
  14. Element(ineq1solved, 1) → a_1
  15. Text(UnicodeToText[Last[TextToUnicode[Text[a_1]], Length[TextToUnicode[Text[a_1]]] - 3]]) → txtIneq1numpivot
  16. Text(UnicodeToText[Last[TextToUnicode[Text[a_2]], Length[TextToUnicode[Text[a_2]]] - 3]]) → txtIneq2numpivot
  17. LaTeX(If[Length[Text[$3]] < 3, "\text{There is no solution}", LaTeX[UnicodeToText[Remove[TextToUnicode[Text[$3]], {123, 125}]]]], false) → txteq1and2solvedalt
  18. LaTeX(UnicodeToText[Remove[TextToUnicode[Text[$1]], {123, 125}]]) → txtSolveineq1
  19. Reverse(TextToUnicode[txteq1and2solvedalt]) → l1
  20. TextToUnicode(txteq1and2solvedalt) → l2
  21. TextToUnicode(Text[a_3]) → la_1
  22. TextToUnicode(Text[b_3]) → lb_1
  23. Sequence(Point[a_3, t] + (0, shiftA_1), t, 0, 1) → Endpointsa_1
  24. Sequence(Point[b_3, t] + (0, shiftB_1), t, 0, 1) → Endpointsb_1
  25. Sequence(Sequence[Element[{clsr1_1, clsr2_1}, n, m], m, 1, 4], n, 1, 2) → cls_1, {{9, 0, 5, 0}, {0, 0, 0, 0}}
  26. Sequence(Point[c_1, t] + (0, shiftC_1), t, 0, 1) → Endpointsc_1
  27. Sequence(Sequence[If[Defined[IndexOf[Element[listIneqsym_1, CLIPBOARDmagicSTRINGt], lb_1, n]], IndexOf[Element[listIneqsym_1, CLIPBOARDmagicSTRINGt], lb_1, n], 0], CLIPBOARDmagicSTRINGt, 1, 4], n, 1, 4, 3) → bls_1, {{0, 0, 0, 3}, {0, 0, 0, 0}}
  28. Sequence(Sequence[If[Defined[IndexOf[Element[listIneqsym_1, CLIPBOARDmagicSTRINGt], la_1, n]], IndexOf[Element[listIneqsym_1, CLIPBOARDmagicSTRINGt], la_1, n], 0], CLIPBOARDmagicSTRINGt, 1, 4], n, 1, 4, 3) → als_1, {{3, 0, 0, 0}, {0, 0, 0, 0}}
  29. Sequence(If[Element[cls_1, 1, m] + Element[cls_1, 2, m] ≟ 0, 0, If[Element[cls_1, 1, m] ≟ Element[cls_1, 2, m], 1, If[(Element[cls_1, 1, m] * Element[cls_1, 2, m]) ≟ 0, 1, 2]]], m, 1, 4) → clls_1
  30. Sequence(If[Element[bls_1, 1, m] + Element[bls_1, 2, m] ≟ 0, 0, If[Element[bls_1, 1, m] ≟ Element[bls_1, 2, m], 1, If[(Element[bls_1, 1, m] * Element[bls_1, 2, m]) ≟ 0, 1, 2]]], m, 1, 4) → blls_1
  31. Sequence(If[Element[als_1, 1, m] + Element[als_1, 2, m] ≟ 0, 0, If[Element[als_1, 1, m] ≟ Element[als_1, 2, m], 1, If[(Element[als_1, 1, m] * Element[als_1, 2, m]) ≟ 0, 1, 2]]], m, 1, 4) → alls_1
  32. If(IndexOf[1, alls_1] > 2, 0, 2) → pta_1
  33. If(IndexOf[1, blls_1] > 2, 0, 2) → ptb_1
  34. If(IndexOf[1, alls_1] ≟ 1 ∨ IndexOf[1, alls_1] ≟ 3, 2, 1) → da_1
  35. If(IndexOf[1, blls_1] ≟ 1 ∨ IndexOf[1, blls_1] ≟ 3, 2, 1) → db_1
  36. Element(Endpointsa_1, da_1) → sta_1
  37. Element(Endpointsb_1, db_1) → stb_1
  38. Element(Endpointsa_1, If[da_1 ≟ 1, 2, 1]) → eta_1
  39. Element(Endpointsb_1, If[db_1 ≟ 1, 2, 1]) → etb_1
  40. Segment(sta_1, eta_1) → sega_1
  41. Segment(stb_1, etb_1) → segb_1
  42. Element(Endpointsc_1, 1) → stc1_1
  43. Element(Endpointsc_1, 2) → stc2_1
  44. If(c_1(stc2_1), 0, 2) → ptc2_1
  45. If(c_1(stc1_1), 0, 2) → ptc1_1
  46. If(Sum[clls_1] ≟ 1, If[IndexOf[1, clls_1] ≟ 1 ∨ IndexOf[1, clls_1] ≟ 3, 2, 1], 3) → flagc_1
  47. Polygon(stc1_1, stc2_1, (x(stc2_1), 0), (x(stc1_1), 0)) → soln_1, f_1, g_1, h_1, i_1
  48. If(flagc_1 ≟ 2, Segment[stc2_1, stc1_1], Segment[stc1_1, stc2_1]) → segc_1
  49. Min(Max[{x(Element[Endpointsa_1, 1]), x(Element[Endpointsa_1, 2]), x(Element[Endpointsb_1, 1]), x(Element[Endpointsb_1, 2]), x(Element[Endpointsc_1, 1]), x(Element[Endpointsc_1, 2])}] + 1.5, 25) → xmax
  50. Max(Min[{x(Element[Endpointsa_1, 1]), x(Element[Endpointsa_1, 2]), x(Element[Endpointsb_1, 1]), x(Element[Endpointsb_1, 2]), x(Element[Endpointsc_1, 1]), x(Element[Endpointsc_1, 2])}] - 1.5, -20) → xmin
  51. Defined(a_1) → ineqdefinedf
  52. Defined(a_2) → ineqdefinedg