Volume of a Cuboid: Formula Derivation and Applications

Volume of a Cuboid: Formula Derivation and Applications
Loading the math board and drawing, please wait…
2023-03-23 21:38
This GeoGebra example demonstrates how to calculate the volume of a cuboid. The core mathematical concept is the volume formula V=a×b×c and why it also applies to cubes (simplified to V=a³). Construction uses Segment commands to draw edges, Sequence to generate unit cube arrays, Textfield for interactive input, and If statements for answer verification. The visualization shows decomposing a cuboid

GeoGebra Commands & Parameters

  1. Segment(A, B) → ab
  2. Segment(A, E) → ae
  3. Segment(A, D) → ad
  4. Segment(B, F) → bf
  5. Segment(E, F) → ef
  6. Segment(D, H) → dh
  7. Segment(E, H) → eh
  8. Segment(C, D) → cd
  9. Segment(B, C) → bc
  10. Segment(C, G) → cg
  11. Segment(F, G) → fg
  12. Segment(G, H) → gh
  13. SpeechBubbleLeft(Bubble, 13.7, 2) → bubble1
  14. SpeechBubbleLeft(Bubble - (0, 1), 18, 2.2) → bubble2
  15. Sequence(Sequence[Polygon[A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)), A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10, 0), A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10 + cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10)], i, 0, cubesHorizontal - 1], j, 0, cubesDepth - 1) → cubesAD, {{0.35355339059327395}}
  16. Sequence(Sequence[Polygon[A + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)), A + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), A + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10 + cubeLengthWuerfel / 10), A + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (0, cubeLengthWuerfel / 10)], i, 0, cubesDepth - 1], j, 0, cubesVertical - 1) → cubesBF, {{0.35355339059327306}}
  17. Textfield(aInput) → InputBox1
  18. SpeechBubbleLeft(Bubble + (-0.5, -1.3), 17.2, 3.5) → bubble3
  19. Textfield(bInput) → InputBox2
  20. If(move ≟ 4, M, If[move ≟ 7, N, If[move ≟ 10, O]]) → SelectedPoint
  21. SpeechBubbleLeft(Bubble - (0, 1.6), 20, 4) → bubble5
  22. Sequence(Sequence[Polygon[P + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)), P + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), P + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10 + cubeLengthWuerfel / 10), P + (cubesHorizontal, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (0, cubeLengthWuerfel / 10)], i, 0, 0], j, 0, 0) → m3, {{0.35355339059327484}}
  23. Sequence(Sequence[Polygon[A + (i, j), A + (i, j) + (cubeLengthWuerfel / 10, 0), A + (i, j) + (cubeLengthWuerfel / 10, cubeLengthWuerfel / 10), A + (i, j) + (0, cubeLengthWuerfel / 10)], i, 0, 0], j, 0, 0) → m5, {{1}}
  24. Sequence(Sequence[Polygon[A + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)), A + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), A + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10 + cubeLengthWuerfel / 10), A + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (0, cubeLengthWuerfel / 10)], i, 0, 1], j, 0, 0) → m6, {{0.35355339059327306, 0.3535533905932722}}
  25. Sequence(Sequence[Polygon[A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)), A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10, 0), A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10 + cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10)], i, 0, 0], j, 0, 1) → m4, {{0.35355339059327395}, {0.35355339059327484}}
  26. Sequence(Sequence[Polygon[P + (i, j), P + (i, j) + (cubeLengthWuerfel / 10, 0), P + (i, j) + (cubeLengthWuerfel / 10, cubeLengthWuerfel / 10), P + (i, j) + (0, cubeLengthWuerfel / 10)], i, 0, 0], j, 1, 3) → m7, {{1.0000000000000036}, {0.9999999999999964}, {1}}
  27. Sequence(Sequence[Polygon[P + (i, 4) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)), P + (i, 4) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10, 0), P + (i, 4) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10 + cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), P + (i, 4) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10)], i, 0, 0], j, 0, 0) → m8, {{0.35355339059327306}}
  28. Sequence(Sequence[Polygon[P + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)), P + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10, 0), P + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeLengthWuerfel / 10 + cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), P + (i, 1) + ((j * cubeDepthCathetersWuerfel / 10), (j * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10)], i, 1, 6], j, 0, 0) → m2, {{0.35355339059327306, 0.35355339059327306, 0.3535533905932766, 0.3535533905932695, 0.3535533905932766, 0.35355339059327306}}
  29. Sequence(Sequence[Polygon[P + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)), P + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10), P + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (cubeDepthCathetersWuerfel / 10, cubeDepthCathetersWuerfel / 10 + cubeLengthWuerfel / 10), P + (1, j) + ((i * cubeDepthCathetersWuerfel / 10), (i * cubeDepthCathetersWuerfel / 10)) + (0, cubeLengthWuerfel / 10)], i, 0, 0], j, 1, 3) → m9, {{0.3535533905932713}, {0.35355339059327306}, {0.35355339059327484}}
  30. Sequence(Sequence[Polygon[P + (i, j), P + (i, j) + (cubeLengthWuerfel / 10, 0), P + (i, j) + (cubeLengthWuerfel / 10, cubeLengthWuerfel / 10), P + (i, j) + (0, cubeLengthWuerfel / 10)], i, 1, 6], j, 0, 0) → m1, {{1.0000000000000036, 1, 1, 0.9999999999999964, 1, 1.000000000000007}}
  31. SpeechBubbleLeft(Bubble - (0, 0.9), 18.5, 3) → bubble6
  32. Textfield(cInput) → InputBox3
  33. Textfield(dInput) → InputBox4
  34. Textfield(eInput) → InputBox5
  35. Textfield(fInput) → InputBox6
  36. SpeechBubbleLeft(Bubble + (-0.5, -3), 17.4, 5) → bubble7
  37. SpeechBubbleLeft(Bubble, 19, 2) → bubble8
  38. Sequence(Sequence[Polygon[A + (i, j), A + (i, j) + (cubeLengthWuerfel / 10, 0), A + (i, j) + (cubeLengthWuerfel / 10, cubeLengthWuerfel / 10), A + (i, j) + (0, cubeLengthWuerfel / 10)], i, 0, cubesHorizontal - 1], j, 0, cubesVertical - 1) → cubesAB, {{1}}
  39. SpeechBubbleLeft(Bubble - (0, 1.1), 16, 3.2) → bubble4
  40. Textfield(gInput) → InputBox7
  41. Textfield(hInput) → InputBox8
  42. SpeechBubbleLeft(Bubble - (0, 3), 20, 5.35) → bubble5_1
  43. Textfield(iInput) → InputBox9
  44. Sequence(Sequence[Polygon[P + (i, j), P + (i, j) + (cubeLengthWuerfel / 10, 0), P + (i, j) + (cubeLengthWuerfel / 10, cubeLengthWuerfel / 10), P + (i, j) + (0, cubeLengthWuerfel / 10)], i, 1, 2], j, 0, 0) → m1_1, {{1.0000000000000036, 1}}
  45. Sequence(Sequence[Polygon[A + (i, j), A + (i, j) + (cubeLengthWuerfel / 10, 0), A + (i, j) + (cubeLengthWuerfel / 10, cubeLengthWuerfel / 10), A + (i, j) + (0, cubeLengthWuerfel / 10)], i, 0, 3 - 1], j, 0, cubesVertical - 1) → cubesAB_1, {{1, 1, 1}}
  46. Sequence(Sequence[Polygon[A + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)), A + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8), A + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8 + cubeLengthWuerfel / 10), A + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (0, cubeLengthWuerfel / 10)], i, 0, cubesDepth], j, 0, cubesVertical - 1) → cubesBF_1, {{0.4419417382415922, 0.4419417382415922}}
  47. Sequence(Sequence[Polygon[A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)), A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeLengthWuerfel / 10, 0), A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeLengthWuerfel / 10 + cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8), A + (i, cubesVertical) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8)], i, 0, 3 - 1], j, 0, cubesDepth) → cubesAD_1, {{0.4419417382415922, 0.4419417382415922, 0.4419417382415922}, {0.4419417382415922, 0.4419417382415922, 0.4419417382415922}}
  48. Sequence(Sequence[Polygon[A + (1, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)), A + (1, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8), A + (1, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8 + cubeLengthWuerfel / 10), A + (1, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (0, cubeLengthWuerfel / 10)], i, 0, 2], j, 0, 0) → m6_1, {{0.4419417382415922, 0.4419417382415922, 0.4419417382415922}}
  49. Sequence(Sequence[Polygon[A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)), A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeLengthWuerfel / 10, 0), A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeLengthWuerfel / 10 + cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8), A + (i, 1) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8)], i, 0, 0], j, 0, 2) → m4_1, {{0.4419417382415922}, {0.4419417382415922}, {0.4419417382415922}}
  50. Sequence(Sequence[Polygon[P + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)), P + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8), P + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8 + cubeLengthWuerfel / 10), P + (3, j) + ((i * cubeDepthCathetersWuerfel / 8), (i * cubeDepthCathetersWuerfel / 8)) + (0, cubeLengthWuerfel / 10)], i, 0, 0], j, 0, 0) → m3_1, {{0.4419417382415922}}
  51. Sequence(Sequence[Polygon[P + (i, par) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)), P + (i, par) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeLengthWuerfel / 10, 0), P + (i, par) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeLengthWuerfel / 10 + cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8), P + (i, par) + ((j * cubeDepthCathetersWuerfel / 8), (j * cubeDepthCathetersWuerfel / 8)) + (cubeDepthCathetersWuerfel / 8, cubeDepthCathetersWuerfel / 8)], i, 1, 2], j, 0, 0) → m2_1, {{0.44194173824159044, 0.441941738241594}}