From 87c1146ba15991ef2d232d19808839ce5cf06fe3 Mon Sep 17 00:00:00 2001 From: "exercism-solutions-syncer[bot]" <211797793+exercism-solutions-syncer[bot]@users.noreply.github.com> Date: Thu, 7 May 2026 15:33:08 +0000 Subject: [PATCH] [Sync Iteration] go/raindrops/5 --- solutions/go/raindrops/5/raindrops.go | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 solutions/go/raindrops/5/raindrops.go diff --git a/solutions/go/raindrops/5/raindrops.go b/solutions/go/raindrops/5/raindrops.go new file mode 100644 index 0000000..ff05d54 --- /dev/null +++ b/solutions/go/raindrops/5/raindrops.go @@ -0,0 +1,31 @@ +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() +}