乘除法数列模式探索:通过几何图形发现规律
几何画板及绘图内容加载中,请稍等……
本范例通过GeoGebra动态演示乘除法数列的生成规律,帮助学生理解数列的递推关系。核心数学概念包括数列定义、等比/等差数列、序列生成方法。作图要点涉及使用RandomUniform生成随机数、Sequence构建数列、Min和Max确定数列范围、Textfield标注关键数值。适合小学高年级学生用于课堂练习或课后拓展,适用于数学教学辅助工具。
GeoGebra 命令及参数
RandomUniform(0, 0.99, 200) → allRandomSeeds, {0.07942720936536823, 0.0857247944443241, 0.10471896353332831, 0.24574403378735687, 0.9173134022142732, 0.8452816261487427, 0.5215417489990848, 0.6923150342259613, 0.4446114463620126, 0.43719955743491634, 0.7985806814625942, 0.7377323140411584, 0.5500484904396661, 0.2690585668568699, 0.9290345453862375, 0.7019510359664392, 0.5633470927159558, 0.5698424922958462, 0.7745344029547644, 0.7736416394742986, 0.2978762117494556, 0.6459579630883499, 0.4313577629443137, 0.5217529784981291, 0.40220923385149326, 0.9137058925085683, 0.6623860294075294, 0.36252135726423007, 0.6347765263871351, 0.11903133271459064, 0.8963903431408228, 0.49698492188461485, 0.9152048672736423, 0.09782939022272834, 0.7586044805317359, 0.778232701100436, 0.168777933595431, 0.8934727381943108, 0.037353547303336454, 0.5677253369822002, 0.6967307327768075, 0.9225531255038791, 0.020755760914515246, 0.6960690990752169, 0.6848086853174538, 0.2750925605762394, 0.6151997814169858, 0.3556076381462363, 0.4356752864069918, 0.5416812515817155, 0.20342309509653442, 0.7101153233298403, 0.5773447351049681, 0.7871377188400523, 0.20457783398122115, 0.9507338073660268, 0.16984508683156857, 0.49836325017085814, 0.6916680651279948, 0.45708835107009843, 0.40578413952620934, 0.8830756850983272, 0.663178540725129, 0.6682527347297316, 0.32739468628670726, 0.236059885529672, 0.5255873047001497, 0.5399014530555872, 0.0029775592929627013, 0.2904593695794872, 0.4617661180970541, 0.06159571517695414, 0.9594401398588953, 0.3234614114745719, 0.5970194404064968, 0.9016940325012368, 0.47484468804045415, 0.8084902037862874, 0.5996994964990339, 0.04686127964604203, 0.7455356457069117, 0.29972476412633015, 0.23695700388013985, 0.41856947547896217, 0.9165060273214509, 0.4593964883737454, 0.6282484009847827, 0.010341424393970197, 0.5711930685530312, 0.05389737673405972, 0.4797179537289495, 0.7467828792873039, 0.7078599316370938, 0.9212442234999432, 0.1615090340930462, 0.04868160099770905, 0.884123881178039, 0.03989432722516707, 0.7974316269039894, 0.8776212960567468, 0.6790345559720262, 0.8972976873476224, 0.7122239093810402, 0.8486664496781219, 0.10338344589855396, 0.8258965654680681, 0.10589358877312002, 0.7807180703916653, 0.6436443124851278, 0.7945467961681323, 0.9573104469193279, 0.9011237048399668, 0.6130971486330167, 0.7445368202548387, 0.22034425316776787, 0.09404425499210099, 0.9452806974817352, 0.7715185631781731, 0.5654032554926653, 0.890938233340826, 0.409948167389419, 0.5577408813580723, 0.2872258818201939, 0.8363183806372553, 0.07016677814744295, 0.20298984455846777, 0.24621452836629687, 0.6026684647328134, 0.20110652792655284, 0.5375910705752833, 0.6654726795616782, 0.595077645610722, 0.42640567961422693, 0.916718431722183, 0.779017543746905, 0.6587575649218503, 0.5567789850113872, 0.3620792799439119, 0.32838861682717946, 0.5111520148555156, 0.9777521184285154, 0.9648098772562564, 0.06505745338722857, 0.8648313100692937, 0.599059831964911, 0.5921167377157862, 0.8146677769737093, 0.15778390300695402, 0.21733705007718482, 0.5898369293015789, 0.36619482990841373, 0.05407484253098381, 0.05626178598709025, 0.7836677401286751, 0.30461179357330476, 0.17013527826696637, 0.5442749560859643, 0.7133292346899544, 0.5195857211006999, 0.5901808041119582, 0.8194071183379477, 0.4263743546662178, 0.2550991235553191, 0.06842461785741843, 0.4035835654314608, 0.26175004545836944, 0.63570371865688, 0.14586071126068303, 0.42505839077158364, 0.23753938447638542, 0.7443608172478833, 0.7454357659221936, 0.3973455874138094, 0.872577271887275, 0.5045083133004453, 0.15141180931842876, 0.8261685616160317, 0.597835020076026, 0.5251176270822311, 0.5466409992223508, 0.3225422433550902, 0.05060621414547222, 0.9020641217535063, 0.16533179414895263, 0.6201303761013784, 0.10260381154099107, 0.2121327545820783, 0.8486802998615738, 0.9684882111508872, 0.622090924756341, 0.40741615001145015, 0.1364733358450485, 0.5307043101320291, 0.42011980774565616, 0.34773552734230706, 0.6594392805316553, 0.0042976741511585505, 0.2318416593612742, 0.3870252284288633, 0.10473078546105198}PixelsToPoint((xMin, yMin), (xMax, yMax), (PXwidth, PXheight), (31, 350)) → lineStartTake(allRandomSeeds, randIndex, randIndex + numRandoms - 1) → currentRandomSeedsIf(typeMultiplication, 1 + floor((currentRandomSeeds(1) * 5)), If[typeAddition, 1, 100] + floor((currentRandomSeeds(1) * If[typeAddition, 100, 200]))) → numStartIf(typeAddition ∨ typeMultiplication, 1, -1) → numSignIf(typeMultiplication, Sequence[(numStart * numInc^(k)), k, 0, 7], Sequence[numStart + ((numSign * numInc) * k), k, 0, 7]) → numSequenceSequence(numSequence(k), k, 1, numShown + 1) → numsUsed, {1, 2, 4, 8}If(typeMultiplication, 0, Max[Min[numsUsed] - numInc, 0]) → minNumIf(typeAddition ∨ typeSubtraction, Max[numsUsed] + numInc, (ceil(Max[numsUsed] / 50) * 50)) → maxNumIf(smallHops, -0.04, 0) → shiftLabelsSequence(lineStart + ((k * unitLength), 0), k, 0, maxNum - minNum) → linePointsSequence(Sum[hopLengths, k] + x(hopStart), k, 0, Length[hopLengths]) → listFunStart, {45.8, 60.599999999999994, 90.2, 149.4, NaN, NaN}Sequence(hopStart + (((k * numSign) * hopLength), 0), k, 0, numShown) → hopPointsMin({animateSolutionIndex, numShown}) → solutionLabelIndexElement({textNumbers3, textNumbers4, textNumbers5}, numShown - 2) → textNumbersTextfield(input1) → InputBox1Textfield(input2) → InputBox2Corner(5) → layoutAppSizeonboardingTextOffset(Corner[onboardingText, 1], Corner[onboardingText, 3], onboardingCase, Corner[1], Corner[3], Corner[5]) → OnboardingTextOffsetIf(typeAddition, "\text{ \plus }", "\text{ \minus }") → textSignTake(numsUsed, 1, numShown) → labelNumsTake(hopPoints, 1, numShown) → labelLocationsAddSubIf(¬typeMultiplication, hopPoints(Length[hopPoints] - 1), (listFunStart(numShown), 0)) → finalPointIf(typeAddition, x(hopStart), x(hopStart) - (hopLength * (numShown - 1))) → funcStartIf(typeAddition, x(hopStart + (hopLength * (numShown - 1))), x(hopStart)) → funcEndSequence(startTopPoint + (numSign * ((hopLength * k), 0)), k, 0, numShown - 1) → topPointsIf(typeMultiplication, hopStart + (Sum[hopLengths, numShown], 0), hopPoints(numShown + 1)) → SolutionPointZip(Text[(("" * topLabel) * ""), B, true, true, 0, 1], B, Take[topPoints, 1, animateHopIndex]) → topLabelsZip(Segment[A + (0, (tickHeight * 1.5)), A - (0, (tickHeight * 1.5))], A, labelLocationsAddSub) → labelTicksPoint(linePoints) → studentPointMin({x(studentPoint), x(finalPoint)}) → studentStartMax({x(studentPoint), x(finalPoint)}) → studentEndSequence(Segment[lineStart + ((k * unitLength), tickHeight), lineStart + ((k * unitLength), (-tickHeight))], k, 0, maxNum - minNum) → ticksAddSubTake(listFunStart, 2, Length[listFunStart]) → listFunEndSequence(hopStart + (Sum[hopLengths, k], 0), k, 0, numShown - 1) → labelLocationsMultiplicationSequence(numsUsed(k + 1) - numsUsed(k), k, 1, numShown) → hopLengthNum, {1, 2, 4}Zip(startTopPoint + If[smallHops, (-0.04, 0), (0, 0)] + (((-hopLength1)) / 2 + Sum[hopLengths, k - 1] + hopLengths(k) / 2, shiftLabels), k, Sequence[numShown]) → topPointsMultZip(hopStart + (Sum[hopLengths, k - 1], 0), k, Sequence[numShown]) → hopPointsMultZip(Text[(("" * A) * ""), B, true, true, 0, -1], A, Take[numsUsed, 1, solutionLabelIndex], B, Zip[k - (0, hintLabelShift), k, Take[labelLocationsMultiplication, 1, solutionLabelIndex]]) → solutionLabelsMultiplicationText((("" * numCorrect) * ""), SolutionPoint - (0, hintLabelShift), true, true, 0, -1) → solutionLabelTake(hopPointsMult, 1, Min[animateSolutionIndex, numShown]) → hopPointsMultSolutionSegment(studentPoint - (0, (2 * hintLabelShift)), studentPoint - (0, (4 * hintLabelShift))) → studentArrowText((("" * studentPointValue) * ""), studentPoint - (0, (If[lowerLabel, 4, 1] * hintLabelShift)), true, true, 0, -1) → studentPointLabelSequence(Segment[lineStart + ((before10 * unitLength) + ((k * 10) * unitLength), (2 * tickHeight)), lineStart + ((before10 * unitLength) + ((k * 10) * unitLength), (-2 * tickHeight))], k, 0, floor((maxNum - minNum) / 10) - 1) → ticksLargeAddSubTake(hopPoints, 1, numShown) → hopPointsAddSubTake(hopPointsAddSub, 1, Min[animateSolutionIndex, numShown]) → hopPointsAddSubSolutionexpandCircle(studentPoint, 8 + (7 * pulsing), Corner[1], Corner[3], Corner[5]) → pulsingCircleIf(smallHops, "\footnotesize", "") → textSizeZip(Text[(((("" * textSize) * "\text{") * topLabelMult) * "}"), B, true, true, 0, 1], K, hopLengthNum, B, Take[topPointsMult, 1, animateHopIndex]) → topLabelsMultSequence(linePoints(A + 1), A, labelNums(2), Length[linePoints], labelNums(2)) → tickMultiplyLocationsZip(Segment[A + (0, (-tickHeight)), A + (0, tickHeight)], A, tickMultiplyLocations) → ticksMultiplicationSequence(Segment[tickMultiplyLocations(A) + (0, (-2 * tickHeight)), tickMultiplyLocations(A) + (0, (tickHeight * 2))], A, numInc, 200, numInc) → ticksMultiplicationLargeZip(If[k < x < j, (jumpHeight * abs(sin((pi / L * (x - k))))) + y(lineStart)], k, listFunStart, j, listFunEnd, L, Take[hopLengths, 1, numShown - 1]) → hopCurveMultTake(Zip[If[k < x < j, (jumpHeight * abs(sin((pi / L * (x - k))))) + y(lineStart)], k, listFunStart, j, listFunEnd, L, Take[hopLengths, 1, numShown]], 1, animateSolutionIndex - 1) → hopCurveMultSolutionZip(Text[(("" * A) * ""), B, true, true, 0, -1], A, labelNums, B, Zip[k - (0, hintLabelShift), k, If[typeMultiplication, labelLocationsMultiplication, labelLocationsAddSub]]) → labelsZip(Text[(("" * A) * ""), B, true, true, 0, -1], A, Take[numsUsed, 1, solutionLabelIndex], B, Zip[k - (0, hintLabelShift), k, Take[hopPoints, 1, solutionLabelIndex]]) → solutionLabelsAddSubZip(Text[K, J, true, true, 0, 1], K, {minNum, maxNum}, J, {lineStart, lineEnd} + (0, hintLabelShift)) → endLabelsZip(Segment[A, A + (0, (3 * tickHeight))], A, {lineStart, lineEnd}) → endTicksSegment(lineStart - ((15 * windowWidth / PXwidth), 0), lineEnd + ((15 * windowWidth / PXwidth), 0)) → numberLine
AI 绘图提示语参考
绘制一条水平数轴,轴上均匀分布刻度线,每十个单位有更长的刻度。数轴上标出若干连续整数点,并用彩色箭头或跳跃线段表示从起点开始按固定步长(如加、减、乘)依次到达后续数字的过程。每个跳跃上方标注对应的数字或运算符号,起点和终点处有标签显示数值。整体布局清晰,适合展示数列规律。
以上提示语为根据原始绘图命令整理而来,仅供参考。