roundToNext5.js (7kyu 41)
Codewars 알고리즘 풀이
Problem
- Given an integer as input, can you round it to the next 5?
- 다음(next) 5로 반올림해서 반환한다.
For example:
0 -> 0
2 -> 5
3 -> 5
12 -> 15
21 -> 25
30 -> 30
-5 -> -5
Solution 01
function roundToNext5(n) {
return Math.ceil(n / 5) * 5;
}
roundToNext5(0); // 0
roundToNext5(2); // 5
roundToNext5(3); // 5
roundToNext5(12); // 15
roundToNext5(-5); // -5
Math.ceil()
: 가장 가까운 정수로 반올림하고, 결과를 반환한다.
Solution 02
function roundToNext5(n) {
while (n % 5 !== 0) {
n++;
}
return n;
}
roundToNext5(0); // 0
roundToNext5(2); // 5
roundToNext5(3); // 5
roundToNext5(12); // 15
roundToNext5(-5); // -5
Solution 03
function roundToNext5(n) {
if (n % 5 === 0) {
return n;
}
return roundToNext5(n + 1);
}
roundToNext5(0); // 0
roundToNext5(2); // 5
roundToNext5(3); // 5
roundToNext5(12); // 15
roundToNext5(-5); // -5