JS_daily_algorithm_02

문제:

내가 쓴 코드:

<html>
  <head>
    <meta charset="UTF-8" />
    <title>출력결과</title>
  </head>
  <body>
    <script>
      function solution(n) {
        let answer;

        if (n % 12 == 0) answer = n / 12;
        else answer = parseInt(n / 12) + 1;

        return answer;
      }

      console.log(solution(25));
    </script>
  </body>
</html>

 

모범 답안:

<html>
  <head>
    <meta charset="UTF-8" />
    <title>출력결과</title>
  </head>
  <body>
    <script>
      function solution(n) {
        let answer = Math.ceil(n / 12);

        return answer;
      }

      console.log(solution(178));
    </script>
  </body>
</html>

 

Impressive Point & Learning Point

  • 기본적으로 Math 함수를 활용하느냐 안 하느냐에 차이에서 크게 갈리는 문제였던 것 같다. 알게되어서 좋았고, 함수를 사용하지 않고, 사용하고 두 가지의 방법으로 모두 풀어보아서 좋았다.
  1. Javascript언어에 math 객체에 존재의 유무에 대해 알게되었다.

  2. math 객체에 있는 ceil 속성이 소수점으로 정수 뒤에 숫자가 붙을 경우에 +1 즉 올림 처리를 해주는 속성인 것을 알게되었다.

  3. math 객체에 있는 floor 속성이 소수점으로 정수 뒤에 숫자가 붙을 경우에 -1 즉 내림 처리를 해주는 속성인 것을 알게되었다.

  4. math 객체에 있는 round 속성이 소수점으로 정수 뒤에 숫자가 붙을 경우에 +1 or -1 즉 반올림 처리를 해주는 속성인 것을 알게되었다.

  5. js언어의 형 변환해주는 메소드들에 대해서 살펴보았고, parseInt에 대해 알게되었다.

  6. mozilla 사이트에서 js 언어의 math 객체에 대해서 찾아볼 수 있다.

  7. math 객체는 알고리즘을 자바스크립트로 푸는 것에 익숙해지면 질수록, 활용성이 높고 자주 사용할 수 있는 자바스크립트 언어만의 고유 객체이기 때문에 꼭 시간을 내서 한번 math 객체에는 어떤 속성들이 있는지 알아보자.

 

좋은 웹페이지 즐겨찾기