同分母分数的加法与减法
几何画板及绘图内容加载中,请稍等……
①本范例演示了同分母分数的加法与减法的几何直观表示。②涉及的核心数学概念包括分数运算、最小公倍数(LCM)、几何变换(平移、旋转)和向量运算。③作图要点:使用了Circle, LCM, Sequence, Vector, Translate, GCD, Segment等GeoGebra命令和对象,如通过LCM找到共同的分母,利用Vector和Translate进行图形平移,用GCD进行几何分割。④适合初中及以上数学学习者,用于理解分数运算的几何意义和算法步骤。
GeoGebra 命令及参数
Circle(centerB, radius) → circleBLCM(denominatorR, denominatorB) → LCMdenominatorSequence(Segment[centerR, Rotate[AR, radius°, centerR]], radius, 360 / denominatorR, 360, 360 / denominatorR) → cutRSequence(Segment[centerB, Rotate[AB, radius°, centerB]], radius, 360 / denominatorB, 360, 360 / denominatorB) → cutBSequence(CircleSector[centerB, Rotate[AB, ((-radius) - 360 / denominatorB)°, centerB], Rotate[AB, (-(radius°)), centerB]], radius, 0, (360 / denominatorB * numeratorB) - 360 / denominatorB, 360 / denominatorB) → shadeBSequence(Segment[centerR, Rotate[AR, radius°, centerR]], radius, 0, 360, 360 / LCMdenominator) → cutLCMRSequence(Segment[centerB, Rotate[AB, radius°, centerB]], radius, 0, 360, 360 / LCMdenominator) → cutLCMBVector(centerB, A) → uVector(centerB, B) → vTranslate(circleB, Vector[(showfinal * u)]) → total0Translate(cutLCMB, Vector[(showfinal * u)]) → cuttotal0Translate(shadeB, Vector[(showfinal * u)]) → FSequence(CircleSector[centerB, Rotate[AB, radius°, centerB], Rotate[AB, (radius + 360 / denominatorR)°, centerB]], radius, 0, (360 / denominatorR * numeratorR) - 360 / denominatorR, 360 / denominatorR) → HTranslate(H, Vector[(showfinal * u)]) → IVector(centerB, J) → wTranslate(circleB, Vector[(showfinal * w)]) → DTranslate(cutLCMB, Vector[(showfinal * w)]) → KSequence(CircleSector[centerB, Rotate[AB, radius°, centerB], Rotate[AB, (radius + 360 / LCMdenominator)°, centerB]], radius, ((LCMdenominator - LCMnumeratorB) * 360 / LCMdenominator), (360 / LCMdenominator * (M + LCMdenominator - LCMnumeratorB - 1)), 360 / LCMdenominator) → NTranslate(N, Vector[(showfinal * v)]) → OGCD(LCMnumerator, LCMdenominator) → PTranslate(circleB, Vector[(showfinal * u)]) → CTranslate(cutLCMB, Vector[(showfinal * u)]) → QSequence(CircleSector[centerB, Rotate[AB, radius°, centerB], Rotate[AB, (radius + 360 / LCMdenominator)°, centerB]], radius, (LCMnumeratorB * 360 / LCMdenominator), (360 / LCMdenominator * (LCMnumeratorR - 1)), 360 / LCMdenominator) → RTranslate(R, Vector[(showfinal * u)]) → STranslate(circleB, Vector[(showfinal * v)]) → UTranslate(cutLCMB, Vector[(showfinal * v)]) → VSequence(CircleSector[centerB, Rotate[AB, ((-radius) - 360 / denominatorR)°, centerB], Rotate[AB, (-(radius°)), centerB]], radius, 0, (360 / denominatorR * numeratorB) - 360 / denominatorR, 360 / denominatorR) → ESequence(CircleSector[centerB, Rotate[AB, radius°, centerB], Rotate[AB, (radius + 360 / denominatorR)°, centerB]], radius, 0, (360 / denominatorR * numeratorB) - 360 / denominatorR, 360 / denominatorR) → TTranslate(N, Vector[(showfinal * v)]) → O2Translate(circleB, Vector[(showfinal * w)]) → D2Translate(circleB, Vector[(showfinal * v)]) → U2Segment(W, Z) → fCircle(centerB, radius) → circleB2Circle((0, 0), radius) → circleR3Sequence(CircleSector[(0, 0), Rotate[AR2, radius°, (0, 0)], Rotate[AR2, (radius + 360 / denominatorR)°, (0, 0)]], radius, (360 / denominatorR * Min[numeratorR, denominatorR - numeratorB]), (360 / denominatorR * numeratorR) - 360 / denominatorR, 360 / denominatorR) → ShapeR2Sequence(Segment[(0, 0), Rotate[AR2, radius°, (0, 0)]], radius, 360 / denominatorR, 360, 360 / denominatorR) → cutR2Sequence(CircleSector[centerR, Rotate[AR, radius°, centerR], Rotate[AR, (radius + 360 / denominatorR)°, centerR]], radius, 0, (360 / denominatorR * (((1 - b) * Min[denominatorR - numeratorB, numeratorR]) + (b * numeratorR))) - 360 / denominatorR, 360 / denominatorR) → shadeRCircle(centerR2, radius) → circleR2Circle(centerR2, radius) → circleR