Visualizing Multiplication of Two-Digit Numbers
Loading the math board and drawing, please wait…
① This example demonstrates the area model for multiplying two‑digit numbers, turning multiplication into a visual rectangle‑area calculation. ② Core mathematical concepts include integer multiplication, the correspondence between area and multiplication, place‑value decomposition, and geometric transformations such as translation and vectors. ③ Construction highlights: the applet uses GeoGebra commands Point, Ray, Vector, Translate, Segment, If, Polygon, and Textfield; objects A, B, C, D, etc., are created and translated via vectors to build partial rectangles, Polygon forms the area regions, and Textfield displays intermediate results. ④ Suitable for upper primary to lower secondary grades as an introductory or review tool for multiplication, and for teacher demonstrations or student self‑exploration.
GeoGebra Commands & Parameters
Point(xAxis) → ARay(A, B) → aPoint(xAxis) → CRay(C, D) → bRay(E, W) → cRay(F, Z) → dRay(G, A_1) → eRay(H, B_1) → fRay(I, C_1) → gRay(J, D_1) → hRay(K, E_1) → iRay(L, F_1) → jRay(M, G_1) → kRay(N, H_1) → lVector(W, Z) → uTranslate(N, u) → N'Translate(H_1, u) → I_1Ray(N', I_1) → l'Translate(N', u) → N''Translate(I_1, u) → J_1Ray(N'', J_1) → l''Translate(N'', u) → N'''Translate(J_1, u) → K_1Ray(N''', K_1) → l'''Translate(N''', u) → L_1Translate(K_1, u) → M_1Ray(L_1, M_1) → mTranslate(L_1, u) → N_1Translate(M_1, u) → O_1Ray(N_1, O_1) → m'Vector(W, Z) → vTranslate(N_1, v) → P_1Translate(O_1, v) → Q_1Ray(P_1, Q_1) → m''Translate(P_1, v) → R_1Translate(Q_1, v) → S_1Ray(R_1, S_1) → m'''Translate(R_1, v) → T_1Translate(S_1, v) → U_1Ray(T_1, U_1) → nTranslate(T_1, v) → V_1Translate(U_1, v) → W_1Ray(V_1, W_1) → n'Translate(V_1, v) → Z_1Translate(W_1, v) → A_2Ray(Z_1, A_2) → n''Translate(Z_1, v) → B_2Translate(A_2, v) → C_2Ray(B_2, C_2) → n'''Translate(B_2, v) → D_2Translate(C_2, v) → E_2Ray(D_2, E_2) → pTranslate(D_2, v) → F_2Translate(E_2, v) → G_2Ray(F_2, G_2) → p'Translate(F_2, v) → H_2Translate(G_2, v) → I_2Ray(H_2, I_2) → p''Translate(H_2, v) → J_2Translate(I_2, v) → K_2Ray(J_2, K_2) → p'''Translate(J_2, v) → L_2Translate(K_2, v) → M_2Ray(L_2, M_2) → qTranslate(L_2, v) → N_2Translate(M_2, v) → O_2Ray(N_2, O_2) → q'Translate(N_2, v) → P_2Translate(O_2, v) → Q_2Ray(P_2, Q_2) → q''Translate(P_2, v) → R_2Translate(Q_2, v) → S_2Ray(R_2, S_2) → q'''Translate(R_2, v) → T_2Translate(S_2, v) → U_2Ray(T_2, U_2) → rTranslate(T_2, v) → V_2Translate(U_2, v) → W_2Ray(V_2, W_2) → r'Translate(V_2, v) → Z_2Translate(W_2, v) → A_3Ray(Z_2, A_3) → r''Translate(Z_2, v) → B_3Translate(A_3, v) → C_3Ray(B_3, C_3) → r'''Translate(B_3, v) → D_3Translate(C_3, v) → E_3Ray(D_3, E_3) → sTranslate(D_3, v) → F_3Translate(E_3, v) → G_3Ray(F_3, G_3) → s'Translate(F_3, v) → H_3Translate(G_3, v) → I_3Ray(H_3, I_3) → s''Translate(H_3, v) → J_3Translate(I_3, v) → K_3Ray(J_3, K_3) → s'''Translate(J_3, v) → L_3Translate(K_3, v) → M_3Ray(L_3, M_3) → tTranslate(L_3, v) → N_3Translate(M_3, v) → O_3Ray(N_3, O_3) → t'Ray(P_3, Q_3) → a_1Vector(A, Q_3) → wTranslate(P_3, w) → R_3Translate(Q_3, w) → S_3Ray(R_3, S_3) → b_1Translate(R_3, w) → T_3Translate(S_3, w) → U_3Ray(T_3, U_3) → c_1Translate(T_3, w) → V_3Translate(U_3, w) → W_3Ray(V_3, W_3) → d_1Translate(V_3, w) → Z_3Translate(W_3, w) → A_4Ray(Z_3, A_4) → e_1Translate(Z_3, w) → B_4Translate(A_4, w) → C_4Ray(B_4, C_4) → f_1Translate(B_4, w) → D_4Translate(C_4, w) → E_4Ray(D_4, E_4) → g_1Translate(D_4, w) → F_4Translate(E_4, w) → G_4Ray(F_4, G_4) → h_1Translate(F_4, w) → H_4Translate(G_4, w) → I_4Ray(H_4, I_4) → i_1Translate(H_4, w) → J_4Translate(I_4, w) → K_4Ray(J_4, K_4) → j_1Translate(J_4, w) → L_4Translate(K_4, w) → M_4Ray(L_4, M_4) → k_1Translate(L_4, w) → N_4Translate(M_4, w) → O_4Ray(N_4, O_4) → l_1Translate(N_4, w) → P_4Translate(O_4, w) → Q_4Ray(P_4, Q_4) → m_1Translate(P_4, w) → R_4Translate(Q_4, w) → S_4Ray(R_4, S_4) → n_1Translate(R_4, Vector[(0, 0)]) → T_4Translate(S_4, Vector[(0, 0)]) → U_4Ray(T_4, U_4) → p_1Translate(T_4, w) → V_4Translate(U_4, w) → W_4Ray(V_4, W_4) → q_1Translate(V_4, w) → Z_4Translate(W_4, w) → A_5Ray(Z_4, A_5) → r_1Translate(Z_4, w) → B_5Translate(A_5, w) → C_5Ray(B_5, C_5) → s_1Translate(B_5, w) → D_5Translate(C_5, w) → E_5Ray(D_5, E_5) → t_1Translate(D_5, w) → F_5Translate(E_5, w) → G_5Ray(F_5, G_5) → a_2Translate(F_5, w) → H_5Translate(G_5, w) → I_5Ray(H_5, I_5) → b_2Translate(H_5, w) → J_5Translate(I_5, w) → K_5Ray(J_5, K_5) → c_2Translate(J_5, w) → L_5Translate(K_5, w) → M_5Ray(L_5, M_5) → d_2Translate(L_5, w) → N_5Translate(M_5, w) → O_5Ray(N_5, O_5) → e_2Translate(N_5, w) → P_5Translate(O_5, w) → Q_5Ray(P_5, Q_5) → f_2Translate(P_5, w) → R_5Translate(Q_5, w) → S_5Ray(R_5, S_5) → g_2Translate(R_5, w) → T_5Translate(S_5, w) → U_5Ray(T_5, U_5) → h_2Translate(T_5, w) → V_5Translate(U_5, w) → W_5Ray(V_5, W_5) → i_2Translate(V_5, w) → Z_5Translate(W_5, w) → A_6Ray(Z_5, A_6) → j_2Translate(Z_5, w) → B_6Translate(A_6, w) → C_6Ray(B_6, C_6) → k_2Translate(B_6, w) → D_6Translate(C_6, w) → E_6Ray(D_6, E_6) → l_2Translate(D_6, w) → F_6Translate(E_6, w) → G_6Ray(F_6, G_6) → m_2Translate(F_6, w) → H_6Translate(G_6, w) → I_6Ray(H_6, I_6) → n_2Translate(H_6, w) → J_6Translate(I_6, w) → K_6Ray(J_6, K_6) → p_2Translate(J_6, w) → L_6Translate(K_6, w) → M_6Ray(L_6, M_6) → q_2Translate(L_6, w) → N_6Translate(M_6, w) → O_6Ray(N_6, O_6) → r_2Translate(N_6, w) → P_6Translate(O_6, w) → Q_6Ray(P_6, Q_6) → s_2Translate(P_6, w) → R_6Translate(Q_6, w) → S_6Ray(R_6, S_6) → t_2Translate(R_6, w) → T_6Translate(S_6, w) → U_6Ray(T_6, U_6) → a_3Translate(T_6, w) → V_6Translate(U_6, w) → W_6Ray(V_6, W_6) → b_3Translate(V_6, w) → Z_6Translate(W_6, w) → A_7Ray(Z_6, A_7) → c_3Translate(Z_6, w) → B_7Translate(A_7, w) → C_7Ray(B_7, C_7) → d_3Vector(B_1, A_1) → zTranslate(A, z) → A'Translate(B, z) → B'Ray(A', B') → a'Vector(B_1, H) → u_1Translate(P_3, u_1) → D_7Translate(Q_3, u_1) → E_7Ray(D_7, E_7) → e_3Segment(F_7, H_7) → f_3Segment(H_7, G_7) → g_3If(tallA ≥ 40, førti, tretti) → yover30If(tallA ≥ 30, yover30, 20) → yover20If(tallA ≥ 20, yover20, 10) → yover10If(tallA ≥ 10, yover10, 0) → yover0If(tallB ≥ 40, førti, tretti) → xover30If(tallB ≥ 30, xover30, 20) → xover20If(tallB ≥ 20, xover20, 10) → xover10If(tallB ≥ 10, xover10, 0) → xover0Segment(I_7, K_7) → h_3Segment(K_7, J_7) → i_3Vector(I_7, F_7) → v_1Translate(K_7, v_1) → L_7Vector(J_7, G_7) → w_1Translate(K_7, w_1) → M_7Segment(K_7, M_7) → j_3Segment(K_7, L_7) → k_3Polygon(A', I_7, K_7, J_7) → mangekant1, a'_1, i_7, k_7, j_7Textfield() → tekstfelt1Polygon(J_7, G_7, M_7, K_7) → mangekant2, j_4, g_7, m_7, k_4Textfield() → tekstfelt2Polygon(I_7, F_7, L_7, K_7) → mangekant3, i_4, f_7, l_7, k_5Textfield() → tekstfelt3Polygon(K_7, M_7, H_7, L_7) → mangekant4, k_6, m_3, h_7, l_3Textfield() → tekstfelt4
AI Drawing Prompt Reference
Draw an area model for multiplying two‑digit numbers: place two origin points on a horizontal axis, emit rays representing the tens and ones digits, use a translation vector to repeatedly shift and create a series of parallel rectangles, then form polygons to enclose each partial rectangle showing its area, and finally add text boxes at key locations to display the intermediate products.
The prompt above was compiled from the original drawing commands and is for reference only.