勾股定理的图形证明 by Steve Phelps

勾股定理的图形证明 by Steve Phelps
几何画板及绘图内容加载中,请稍等……
2019-06-08 07:57
①本范例通过动态图形演示勾股定理,即直角三角形斜边平方等于两直角边平方和;②涉及核心概念:面积、几何图形、勾股定理、正方形、集合论、线性回归、割线、方差;③作图要点:使用Point、Semicircle、Polygon、Centroid、OrthogonalLine、Intersect、Rotate、If等GeoGebra命令构建图形;④适合高中数学教学或数学爱好者探索几何证明。

GeoGebra 命令及参数

  1. Point(xAxis) → A
  2. Point(xAxis) → B
  3. Semicircle(A, B) → c
  4. Point(c) → C
  5. Polygon(A, C, 4) → poly1, f, g, h, i, D, E
  6. Polygon(C, B, 4) → poly2, j, k, l, m, F, G
  7. Polygon(B, A, 4) → poly3, n, p, q, r, H, I
  8. Centroid(poly2) → J
  9. Centroid(poly3) → K
  10. Centroid(poly1) → L
  11. OrthogonalLine(J, n) → s
  12. OrthogonalLine(J, s) → t
  13. OrthogonalLine(J, m) → a
  14. OrthogonalLine(J, a) → b
  15. Intersect(s, j) → M
  16. OrthogonalLine(M, a) → d
  17. Intersect(a, d) → N
  18. Intersect(t, k) → O
  19. Polygon(M, N, J, O, B) → p1, m_1, n_1, j_1, o_1, b_1
  20. Rotate(M, π / 2, J) → M'
  21. Rotate(N, π / 2, J) → N'
  22. Rotate(J, π / 2, J) → J'
  23. Rotate(O, π / 2, J) → O'
  24. Rotate(B, π / 2, J) → B'
  25. Polygon(M', N', J', O', B') → p2, m', n', j', o', b'
  26. Rotate(M, π, J) → M'_1
  27. Rotate(N, π, J) → N'_1
  28. Rotate(J, π, J) → J'_1
  29. Rotate(O, π, J) → O'_1
  30. Rotate(B, π, J) → B'_1
  31. Polygon(M'_1, N'_1, J'_1, O'_1, B'_1) → p3, m'_1, n'_1, j'_1, o'_1, b'_1
  32. Rotate(M, ((-π)) / 2, J) → M'_2
  33. Rotate(N, ((-π)) / 2, J) → N'_2
  34. Rotate(J, ((-π)) / 2, J) → J'_2
  35. Rotate(O, ((-π)) / 2, J) → O'_2
  36. Rotate(B, ((-π)) / 2, J) → B'_2
  37. Polygon(M'_2, N'_2, J'_2, O'_2, B'_2) → p4, m'_2, n'_2, j'_2, o'_2, b'_2
  38. If(0 < o ≤ 1, Polygon[Translate[M, Vector[J, Dilate[J, 1 - o, A]]], Translate[N, Vector[J, Dilate[J, 1 - o, A]]], Translate[J, Vector[J, Dilate[J, 1 - o, A]]], Translate[O, Vector[J, Dilate[J, 1 - o, A]]], Translate[B, Vector[J, Dilate[J, 1 - o, A]]]], Polygon[Translate[M, A - J], Translate[N, A - J], Translate[J, A - J], Translate[O, A - J], Translate[B, A - J]]) → poly4
  39. If(2 < o ≤ 3, Polygon[Translate[M', Vector[J, Dilate[J, 3 - o, H]]], Translate[N', Vector[J, Dilate[J, 3 - o, H]]], Translate[J', Vector[J, Dilate[J, 3 - o, H]]], Translate[O', Vector[J, Dilate[J, 3 - o, H]]], Translate[B', Vector[J, Dilate[J, 3 - o, H]]]], Polygon[Translate[M', H - J], Translate[N', H - J], Translate[J', H - J], Translate[O', H - J], Translate[B', H - J]]) → poly5
  40. If(4 < o ≤ 5, Polygon[Translate[M'_1, Vector[J, Dilate[J, 5 - o, I]]], Translate[N'_1, Vector[J, Dilate[J, 5 - o, I]]], Translate[J'_1, Vector[J, Dilate[J, 5 - o, I]]], Translate[O'_1, Vector[J, Dilate[J, 5 - o, I]]], Translate[B'_1, Vector[J, Dilate[J, 5 - o, I]]]], Polygon[Translate[M'_1, I - J], Translate[N'_1, I - J], Translate[J'_1, I - J], Translate[O'_1, I - J], Translate[B'_1, I - J]]) → poly6
  41. If(6 < o ≤ 7, Polygon[Translate[M'_2, Vector[J, Dilate[J, 7 - o, B]]], Translate[N'_2, Vector[J, Dilate[J, 7 - o, B]]], Translate[J'_2, Vector[J, Dilate[J, 7 - o, B]]], Translate[O'_2, Vector[J, Dilate[J, 7 - o, B]]], Translate[B'_2, Vector[J, Dilate[J, 7 - o, B]]]], Polygon[Translate[M'_2, B - J], Translate[N'_2, B - J], Translate[J'_2, B - J], Translate[O'_2, B - J], Translate[B'_2, B - J]]) → poly7
  42. Polygon(M, N, J) → t1, j_2, m_2, n_2
  43. Polygon(O'_1, N'_2, J) → t2, j_3, e, f_1
  44. Polygon(O', N'_1, J) → t3, j_4, g_1, h_1
  45. Polygon(O, N', J) → t4, j_5, o_2, i_1
  46. If(8 < o ≤ 9, Polygon[Translate[M, Vector[J, Dilate[J, 9 - o, A]]], Translate[N, Vector[J, Dilate[J, 9 - o, A]]], Translate[J, Vector[J, Dilate[J, 9 - o, A]]]], Polygon[Translate[M, A - J], Translate[N, A - J], Translate[J, A - J]]) → t5
  47. If(10 < o ≤ 11, Polygon[Translate[O'_1, Vector[J, Dilate[J, 11 - o, B]]], Translate[N'_2, Vector[J, Dilate[J, 11 - o, B]]], Translate[J, Vector[J, Dilate[J, 11 - o, B]]]], Polygon[Translate[O'_1, B - J], Translate[N'_2, B - J], Translate[J, B - J]]) → t6
  48. If(12 < o ≤ 13, Polygon[Translate[O', Vector[J, Dilate[J, 13 - o, I]]], Translate[N'_1, Vector[J, Dilate[J, 13 - o, I]]], Translate[J, Vector[J, Dilate[J, 13 - o, I]]]], Polygon[Translate[O', I - J], Translate[N'_1, I - J], Translate[J, I - J]]) → t7
  49. If(14 < o ≤ 15, Polygon[Translate[O, Vector[J, Dilate[J, 15 - o, H]]], Translate[N', Vector[J, Dilate[J, 15 - o, H]]], Translate[J, Vector[J, Dilate[J, 15 - o, H]]]], Polygon[Translate[O, H - J], Translate[N', H - J], Translate[J, H - J]]) → t8
  50. Polygon(A, E, D, C) → q1, a_1, e_1, d_1, c_1
  51. If(16 < o ≤ 17, Polygon[Translate[A, Vector[L, Dilate[L, 17 - o, K]]], Translate[E, Vector[L, Dilate[L, 17 - o, K]]], Translate[D, Vector[L, Dilate[L, 17 - o, K]]], Translate[C, Vector[L, Dilate[L, 17 - o, K]]]], Polygon[Translate[A, K - L], Translate[E, K - L], Translate[D, K - L], Translate[C, K - L]]) → q2
  52. Angle(B, C, A) → α

AI 绘图提示语参考

画一个直角三角形,以横轴上的两点为直角顶点,绘制半圆,使半圆与横轴和纵轴相交。在半圆上构造三个正方形,分别以三角形的两条直角边和斜边为边。通过动态几何演示,展示三个正方形面积的关系,证明勾股定理。
以上提示语为根据原始绘图命令整理而来,仅供参考。