From 57bfba51aa81e1472e4f4d3d44591f2b1f38657d Mon Sep 17 00:00:00 2001 From: "exercism-solutions-syncer[bot]" <211797793+exercism-solutions-syncer[bot]@users.noreply.github.com> Date: Sun, 16 Aug 2026 03:50:35 +0000 Subject: [PATCH] [Sync Iteration] go/difference-of-squares/1 --- .../1/difference_of_squares.go | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 solutions/go/difference-of-squares/1/difference_of_squares.go diff --git a/solutions/go/difference-of-squares/1/difference_of_squares.go b/solutions/go/difference-of-squares/1/difference_of_squares.go new file mode 100644 index 0000000..fe57a8c --- /dev/null +++ b/solutions/go/difference-of-squares/1/difference_of_squares.go @@ -0,0 +1,31 @@ +package differenceofsquares + +func exponent(base int, power int) int { + result := 1 + for range power { + result *= base + } + return base +} + +func SquareOfSum(n int) int { + sum := 0 + for n > 0 { + sum += n + n-- + } + return exponent(sum, 2) +} + +func SumOfSquares(n int) int { + sum := 0 + for n > 0 { + sum += exponent(n, 2) + n-- + } + return sum +} + +func Difference(n int) int { + return SquareOfSum(n) - SumOfSquares(n) +}