Visualizing multiplication

Task
Create an applet to visualize multiplication of natural numbers. Explore the following applet and try to create one by following the instructions below.
Explore the construction...
Instructions
[table][tr][td]1[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_slider.png[/icon][/td][td]Create a horizontal slider [i]Columns[/i] for a number with Interval from 1 to 10, [i]Increment[/i] 1 and [i]Width[/i] 300.[br][b]Hint: [/b]You can change the [i]Width[/i] of the slider in the [img]https://wiki.geogebra.org/uploads/thumb/3/30/Menu-options.svg/16px-Menu-options.svg.png[/img] [i]Settings[/i] in tab [i]Slider[/i].[/td][/tr][tr][td]2[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_point.png[/icon][/td][td]Create a new point [i]A[/i].[/td][/tr][tr][td]3[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_segmentfixed.png[/icon][/td][td]Construct segment [i]f[/i] with given length [i]Columns[/i] from point [i]A[/i].[/td][/tr][tr][td]4[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_move.png[/icon][/td][td]Move slider [i]Columns[/i] to check the segment with given length.[/td][/tr][tr][td]5[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_orthogonal.png[/icon][/td][td]Construct a perpendicular line [i]g[/i] to segment [i]f[/i] through point [i]A[/i].[/td][/tr][tr][td]6[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_orthogonal.png[/icon][/td][td]Construct a perpendicular line [i]h[/i] to segment [i]f [/i]through point [i]B[/i].[/td][/tr][tr][td]7[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_slider.png[/icon][/td][td]Create a vertical slider [i]Rows[/i] for a number with [i]Interval[/i] from 1 to 10, [i]Increment[/i] 1 and [i]Width[/i] 300.[br][b]Hint:[/b] You can select the orientation of the slider in the [i]Slider dialog[/i] in tab [i]Slider[/i].[/td][/tr][tr][td]8[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_circlepointradius.png[/icon][/td][td]Create a circle [i]c[/i] with center [i]A[/i] and given radius [i]Rows[/i].[/td][/tr][tr][td]9[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_move.png[/icon][/td][td]Move slider [i]Rows[/i] to check the circle with given radius.[/td][/tr][tr][td]10[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_intersect.png[/icon][/td][td]Intersect circle [i]c[/i] with line [i]g [/i]to get intersection point [i]C[/i].[br][b]Hint: [/b]When selecting the [i]Intersect [/i]tool click on the intersection point above point [i]A[/i] to only create this point.[/td][/tr][tr][td]11[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_parallel.png[/icon][/td][td]Create a parallel line [i]i[/i] to segment [i]f[/i] through intersection point [i]C[/i].[/td][/tr][tr][td]12[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_intersect.png[/icon][/td][td]Intersect lines [i]i[/i] and [i]h[/i] to get intersection point [i]D[/i].[/td][/tr][tr][td]13[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_polygon.png[/icon][/td][td]Construct a polygon [i]ABDC[/i].[/td][/tr][tr][td]14[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_showhideobject.png[/icon][/td][td]Hide all lines, circle [i]c[/i] and segment [i]f[/i].[/td][/tr][tr][td]15[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_showhidelabel.png[/icon][/td][td]Hide labels of segments using the [img]https://wiki.geogebra.org/uploads/thumb/d/db/Stylingbar_icon_graphics.svg/16px-Stylingbar_icon_graphics.svg.png[/img] [i]Style Bar[/i].[/td][/tr][tr][td]16[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_move.png[/icon][/td][td]Set both sliders [i]Columns[/i] and [i]Rows[/i] to value 10.[/td][/tr][/table]
Try it yourself...
Instructions (continued)
[table][tr][td]17[/td][td][icon]https://wiki.geogebra.org/uploads/thumb/4/40/Menu_view_algebra.svg/120px-Menu_view_algebra.svg.png[/icon][/td][td]Create a list of vertical segments.[br][code]Sequence(Segment(A+i*(1, 0), C+i*(1, 0)),i ,1 ,Columns)[br][/code][br][b]Note:[/b][br][code]A + i*(1, 0)[/code] specifies a series of points starting at point [i]A[/i] with distance 1 from each other.[br][code]C + i*(1, 0)[/code] specifies a series of points starting at point [i]C[/i] with distance 1 from each other.[br][code]Segment(A + i*(1, 0), C + i*(1, 0))[/code]creates a list of segments between pairs of these points. Note, that the endpoints of the segments are not shown in the [img]https://wiki.geogebra.org/uploads/thumb/c/c8/Menu_view_graphics.svg/16px-Menu_view_graphics.svg.png[/img] [i]Graphics View[/i].[br]Slider [i]Column[/i] determines the number of segments created.[/td][/tr][tr][td]18[/td][td][icon]https://wiki.geogebra.org/uploads/thumb/4/40/Menu_view_algebra.svg/120px-Menu_view_algebra.svg.png[/icon][/td][td]Create a list of horizontal segments.[br][code]Sequence(Segment(A+i*(0, 1), B+i*(0, 1)), i, 1, Rows)[br][br][/code][/td][/tr][tr][td]19[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_move.png[/icon][/td][td]Move sliders [i]Columns[/i] and [i]Rows[/i] to check the construction.[/td][/tr][tr][td]20[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_text.png[/icon][/td][td]Insert static and dynamic text that state the multiplication problem using the values of sliders [i]Columns[/i] and [i]Rows[/i] as the factors:[br][i]text1[/i]: [code]Columns[/code][br][i]text2[/i]: [code]*[/code][br][i]text3[/i]: [code]Rows[/code][br][i]text4[/i]: [code]=[/code][/td][/tr][tr][td]21[/td][td][icon]https://wiki.geogebra.org/uploads/thumb/4/40/Menu_view_algebra.svg/120px-Menu_view_algebra.svg.png[/icon][/td][td]Calculate the result of the multiplication: [code]result = Columns * Rows[/code][/td][/tr][tr][td]22[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_text.png[/icon][/td][td]Insert dynamic [i]text5[/i]: [code]result[/code][/td][/tr][tr][td]23[/td][td][icon]https://www.geogebra.org/images/ggb/toolbar/mode_showhideobject.png[/icon][/td][td]Hide points [i]A[/i], [i]B[/i], [i]C[/i] and [i]D[/i].[/td][/tr][tr][td]24[/td][td][size=100][/size][img]https://wiki.geogebra.org/uploads/thumb/d/db/Stylingbar_icon_graphics.svg/32px-Stylingbar_icon_graphics.svg.png[/img][/td][td]Enhance your construction using the [i]Style Bar[/i].[/td][/tr][/table]

Information: Visualizing multiplication