Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit f5f2f3b

Browse files
author
programmiri
committed
Add excercise Raindrops and solution for it
1 parent 24f75ff commit f5f2f3b

File tree

3 files changed

+4243
-19
lines changed

3 files changed

+4243
-19
lines changed

‎raindrops/raindrops.js‎

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,20 @@
1+
function modulo(number, factor) {
2+
return number % factor === 0;
3+
}
4+
15
export const convert = (input) => {
26
let result = '';
37

4-
if (input%3===0) {
8+
if (modulo(input,3)) {
59
result = result + 'Pling';
610
}
7-
if (input%5===0) {
11+
if (modulo(input,5)) {
812
result = result + 'Plang';
913
}
10-
if (input%7===0) {
14+
if (modulo(input,7)) {
1115
result = result + 'Plong';
1216
}
13-
return result.length > 0 ? result : input.toString();
17+
18+
if (result.length === 0) return input.toString();
19+
return result;
1420
};

‎raindrops/raindrops.spec.js‎

Lines changed: 15 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,33 +3,33 @@ import { convert } from './raindrops';
33
describe('Raindrops', () => {
44
test('converts 1', () => expect(convert(1)).toEqual('1'));
55

6-
xtest('converts 3', () => expect(convert(3)).toEqual('Pling'));
6+
test('converts 3', () => expect(convert(3)).toEqual('Pling'));
77

8-
xtest('converts 5', () => expect(convert(5)).toEqual('Plang'));
8+
test('converts 5', () => expect(convert(5)).toEqual('Plang'));
99

10-
xtest('converts 7', () => expect(convert(7)).toEqual('Plong'));
10+
test('converts 7', () => expect(convert(7)).toEqual('Plong'));
1111

12-
xtest('converts 6', () => expect(convert(6)).toEqual('Pling'));
12+
test('converts 6', () => expect(convert(6)).toEqual('Pling'));
1313

14-
xtest('converts 9', () => expect(convert(9)).toEqual('Pling'));
14+
test('converts 9', () => expect(convert(9)).toEqual('Pling'));
1515

16-
xtest('converts 10', () => expect(convert(10)).toEqual('Plang'));
16+
test('converts 10', () => expect(convert(10)).toEqual('Plang'));
1717

18-
xtest('converts 14', () => expect(convert(14)).toEqual('Plong'));
18+
test('converts 14', () => expect(convert(14)).toEqual('Plong'));
1919

20-
xtest('converts 15', () => expect(convert(15)).toEqual('PlingPlang'));
20+
test('converts 15', () => expect(convert(15)).toEqual('PlingPlang'));
2121

22-
xtest('converts 21', () => expect(convert(21)).toEqual('PlingPlong'));
22+
test('converts 21', () => expect(convert(21)).toEqual('PlingPlong'));
2323

24-
xtest('converts 25', () => expect(convert(25)).toEqual('Plang'));
24+
test('converts 25', () => expect(convert(25)).toEqual('Plang'));
2525

26-
xtest('converts 35', () => expect(convert(35)).toEqual('PlangPlong'));
26+
test('converts 35', () => expect(convert(35)).toEqual('PlangPlong'));
2727

28-
xtest('converts 49', () => expect(convert(49)).toEqual('Plong'));
28+
test('converts 49', () => expect(convert(49)).toEqual('Plong'));
2929

30-
xtest('converts 52', () => expect(convert(52)).toEqual('52'));
30+
test('converts 52', () => expect(convert(52)).toEqual('52'));
3131

32-
xtest('converts 105', () => expect(convert(105)).toEqual('PlingPlangPlong'));
32+
test('converts 105', () => expect(convert(105)).toEqual('PlingPlangPlong'));
3333

34-
xtest('converts 12121', () => expect(convert(12121)).toEqual('12121'));
34+
test('converts 12121', () => expect(convert(12121)).toEqual('12121'));
3535
});

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /