
정수 num이 주어질 때 num를 0으로 만들어가는 step의 수를 리턴하는 문제이다.
step 은 다음과 같이 진행된다.
- num이 짝수라면 2로 나눈다
- num이 홀수라면 1을 뺀다.
Example을 보자

예시와 같이 초기 num 을 가지고 짝수이면 2로 나누어가고 홀수라면 1을 빼는 step을 진행해서 num이 0 이되는 순간 진행한 step의 수를 리턴하면 될것 같다.
const numberOfSteps = function (num) {
let count = 0;
while (num !== 0) {
num % 2 === 0 ? (num = num / 2) : (num = num - 1);
count++;
}
return count;
};
while 문을 num이 0이 아닐동안 계속 돌면서 num 이 짝수인지를 체크를 해주었다. 짝수라면 2로 나누어서 다시 num에 할당을 해주었고 홀수라면 1을 빼서 num에 할당을 해주었고
num이 0이되면 while 문을 빠져나오면서 count 값을 리턴해주었다.
submit을 해보니

정답이었다!