Stretches and Reflections of Exponential Functions: Interactive Practice

Stretches and Reflections of Exponential Functions: Interactive Practice
Loading the math board and drawing, please wait…
2019-03-19 02:37
① This example demonstrates vertical and horizontal stretches and reflections of exponential functions, where random parameters are generated and students must input the transformed function expression to check their understanding. ② Core math concepts include exponential functions, vertical stretch (multiplying by a), horizontal stretch (affecting the base or exponent), reflections across the x-axis and y-axis, and their effects on the graph. ③ Construction highlights: GeoGebra commands such as Random and Element select random stretch coefficients, NumToImproperFrac and LaTeX display fractions, Sequence and Segment build reference segments, Polygon creates auxiliary shapes; objects include preImageFunction (original function), imageFunctionTxt (target function text), userFunction (user input), and checkboxes (fbVerticalStretch, etc.) for feedback. ④ Suitable for high school or pre-university students learning function transformations, useful as classroom practice or self-study tool to reinforce understanding of exponential transformation rules.

GeoGebra Commands & Parameters

  1. Random(1, 7) → correctAIndx
  2. Random(2, 4) → base
  3. Element(potentialStretchValues, hStretchIndx) → hStretchValue
  4. Element(potentialStretchValues, vStretchIndx) → vStretchValue
  5. NumToImproperFrac(vStretchValue) → vStretchDisp
  6. NumToImproperFrac(hStretchValue) → hStretchDisp
  7. LaTeX((((If[vStretchValue ≟ 1, "", If[vStretchValue ≟ -1, "-", (vStretchDisp * "\cdot")]] * "2^{") * If[hStretchValue ≟ 1, "", If[hStretchValue ≟ -1, "-", hStretchDisp]]) * "x}")) → imageFunctionTxt
  8. LaTeX(If[bValCorrect ≟ 1, "", If[bValCorrect ≟ -1, "-", NumToImproperFrac[bValCorrect]]]) → bValCorrectDisp
  9. LaTeX(If[abs(aValCorrect) ≟ 1, "", (("A vertical stretch by a factor of " * FractionText[abs(aValCorrect)]) * ".\\")]) → fbVerticalStretch
  10. LaTeX(If[abs(bValCorrect) ≟ 1, "", (("A horizontal stretch by a factor of " * NumToImproperFrac[1 / abs(bValCorrect)]) * ".\\")]) → fbHorizontalStretch
  11. LaTeX(If[aValCorrect < 0, "A reflection in the \(x\)-axis.\\", ""]) → fbVreflection
  12. LaTeX(If[bValCorrect < 0, "A reflection in the \(y\)-axis.\\", ""]) → fbHreflection
  13. Sequence((11, i), i, 10, 4, -3) → legendAnchors
  14. LaTeX((UnicodeToLetter[10007] * "\text{ Incorrect}")) → incorrect
  15. LaTeX((UnicodeToLetter[10003] * "\text{ Correct}")) → correct
  16. Segment(Element[legendAnchors, 1], Element[legendAnchors, 1] + (3, 0)) → legendParent
  17. Segment(Element[legendAnchors, 2], Element[legendAnchors, 2] + (3, 0)) → legendTransformed
  18. Polygon({(-10.5, -10.5), (-10.5, 10.5), (10.5, 10.5), (10.5, -10.5)}) → viewbox
  19. LaTeX(((((("\vphantom{\dfrac{1}{1}}y=" * If[aValCorrect ≟ 1, "", If[aValCorrect ≟ -1, "-", (NumToImproperFrac[aValCorrect] * "\cdot")]]) * base) * "^{") * bValCorrectDisp) * "x}")) → transformedFuncLbl
  20. LaTeX((((("\text{\textbf{Question: }" * MainInstruc) * "\\\textbf{Instructions: }") * SpecInstruc) * "}")) → allInstruc
  21. LaTeX(((((((((("\text{In order to transform \(" * parentFuncLbl) * "\) into \(") * transformedFuncLbl) * "\),\\we must apply the following transformations:\\") * fbVerticalStretch) * fbHorizontalStretch) * fbVreflection) * fbHreflection) * "}")) → fbComplete