From c2f857a196a0ad2c47dbec6ca6a76bcb313049c3 Mon Sep 17 00:00:00 2001 From: "exercism-solutions-syncer[bot]" <211797793+exercism-solutions-syncer[bot]@users.noreply.github.com> Date: Wed, 3 Jun 2026 08:16:47 +0000 Subject: [PATCH] [Sync Iteration] go/raindrops/6 --- solutions/go/raindrops/6/raindrops.go | 30 +++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 solutions/go/raindrops/6/raindrops.go diff --git a/solutions/go/raindrops/6/raindrops.go b/solutions/go/raindrops/6/raindrops.go new file mode 100644 index 0000000..5ec2254 --- /dev/null +++ b/solutions/go/raindrops/6/raindrops.go @@ -0,0 +1,30 @@ +package raindrops + +import ( + "strconv" + "strings" +) + +var rules = []struct { + divisor int + word string +}{ + {3, "Pling"}, + {5, "Plang"}, + {7, "Plong"}, +} + +func Convert(number int) string { + var sb strings.Builder + + for _, n := range rules { + if number%n.divisor == 0 { + sb.WriteString(n.word) + } + } + + if sb.Len() == 0 { + return strconv.Itoa(number) + } + return sb.String() +}