TIL16_코드카타 4

이동하·2021년 1월 3일
0

CodeKata

목록 보기
4/5
post-thumbnail

Week1_Day4

문제

숫자인 num을 인자로 넘겨주면, 뒤집은 모양이 num과 똑같은지 여부를 반환해주세요.

  • num: 숫자

  • return: true or false (뒤집은 모양이 num와 똑같은지 여부)

    • 예를 들어,
      num = 123
      return false
      => 뒤집은 모양이 321 이기 때문

      num = 1221
      return true
      => 뒤집은 모양이 1221 이기 때문

      num = -121
      return false
      => 뒤집은 모양이 121- 이기 때문

      num = 10
      return false
      => 뒤집은 모양이 01 이기 때문

문제 접근 방식

  • 숫자를 뒤집고(->문자->배열) 다시 모아서 숫자로 만들어준다
  • -부호까지 다 뒤집는다
  • 원래 숫자와 뒤집은 숫자를 참/거짓으로 비교한다

해결 코드

코드 해설

  • 숫자 numtoString() split() reverse() join을 한 번에 해줘서 reNum에 담아줬습니다.
  • 숫자 -> 문자 -> 배열을 거쳐서 join()을 해줬기 때문에 reNum의 type은 문자입니다. 따라서 Number()을 사용해서 숫자로 바꿔줬습니다.
  • if문을 사용해서 numreNum을 비교해서 참/거짓을 반환해줬습니다.

모델 솔루션

후기

  • 숫자를 뒤집을 때 type을 바꿨는데 다시 숫자형으로 바꾸지 않고 numreNum을 비교해서 오류가 났는데 같은 팀인 인태님이 type을 비교해보라고 하셔서 typeof()를 사용해서 두 변수의 타입이 다르다는 것을 알았는데 이런 쉽게 놓칠 수 있는 부분을 조심해야겠습니다.
  • week1의 day2 문제처럼 reverse() 함수를 혹은 특정 함수를 풀어서 코드를 구현할 수 있는 연습을 해야겠습니다.
profile
개발자를 꿈꾸며 오늘을 채워 내일을 그리고 있습니다 :)

0개의 댓글