Tracks
/
8th
/
Exercises
/
Raindrops

# Raindrops

Easy

## Instructions

Your task is to convert a number into a string that contains raindrop sounds corresponding to certain potential factors. A factor is a number that evenly divides into another number, leaving no remainder. The simplest way to test if one number is a factor of another is to use the modulo operation.

The rules of `raindrops` are that if a given number:

• has 3 as a factor, add 'Pling' to the result.
• has 5 as a factor, add 'Plang' to the result.
• has 7 as a factor, add 'Plong' to the result.
• does not have any of 3, 5, or 7 as a factor, the result should be the digits of the number.

### Examples

• 28 has 7 as a factor, but not 3 or 5, so the result would be "Plong".
• 30 has both 3 and 5 as factors, but not 7, so the result would be "PlingPlang".
• 34 is not factored by 3, 5, or 7, so the result would be "34".

### Running and testing your solutions

#### From the command line

Simply type `8th test.8th`. It is assumed that the 8th binary is declared in the PATH environment variable.

#### From a REPL

Start 8th loading test-words.8th and your solution file: `8th -f test-words.8th -f raindrops-tests.8th` This will start a CLI session where you can run tests interactively by copying and pasting them in from raindrops-tests.8th or by entering your own.

#### Editing the raindrops-tests.8th file

This is encouraged at the beginning of your journey. Insert a back-slash space before all but the first one or two tests. Write your code to solve the first test or two. Then progressively enable more tests until you can pass all of them.

Last updated 15 March 2023
Edit via GitHub