[프로그래머스 코딩테스트] 몫 구하기

도라희·2022년 12월 24일
0

👻

프로그래머스에 있는 두 수의 차, 두 수의 곱은 사칙연산만 알고 있다면 풀 수 있는 문제다. 내가 아무리 멍청해도 그 정도는 알고 있기 때문에 두 수의 곱을 풀고 10초만에 바로 풀었다. (사실 코드 쓰느라 1분은 걸렸다. 영타 속도 늘어야 하는데...)



🤔문제

정수 num1, num2가 매개변수로 주어질 때,num1num2로 나눈 몫을 return 하도록 solution 함수를 완성해주세요.

❎제한사항

0 ≤ num1 ≤ 100
0 ≤ num2 ≤ 100

💖입출력 예

num1num2result
1052
723

🗣️입출력 예 설명

입출력 예 #1
num1이 10, num2가 5이므로 10을 5로 나눈 몫 2를 return합니다.

입출력 예 #2
num1이 7, num2가 2이므로 7을 2로 나눈 몫 3을 return합니다.

📚 나의 풀이

function solution(num1, num2) {
    return Math.floor(num1 / num2);
}

Math.floor 을 활용해 풀었다. Math.floor 함수는 주어진 숫자와 같거나 작은 정수 중에서 가장 큰 수를 반환한다. 10진수보다 작거나, 같은 최대 정수를 반환한다는 뜻이다.

코딩을 하면서 제일 중요한 거는 코드를 읽을 줄 알아야 한다고 했는데, 그럼 내 코드는 아마도 리턴한다, num1num2를 나눠서 10진수보다 작거나 같은 최대 정수를! 이런 뜻이 되겠지...

그리고 내가 짠 코드를 보고 또 다른 사람들이 짠 코드도 같이 보았다.
Math.floor 대신 Math.trunc을 활용한 사람도 보였다. Math.trunc는 소수점 아래에 있는 것들을 다 버리는 것이다.

function solution(num1, num2) {
    return ~~(num1/num2);
}

이렇게 틸트연산자 를 활용한 사람도 보였다. 처음 보는 코드에 공부할 게 또 늘어나 버렸다는 생각이 나를 슬프게 만들었다. 얘는 다음에 알아 보겠다...


오늘도 다양한 코딩의 세계에서 정신 못차리는 나를 보았다.

profile
개발이 뭔가요

0개의 댓글