[코딩테스트 연습] 하샤드 수 자바스크립트 풀이

2022. 3. 31. 15:59· 알고리즘
목차
  1. 문제 설명
  2. 제한 조건
  3. 초기 코드
  4. 코드 풀이 설명
  5. 프로그래머스 코딩테스트 연습 - 하샤드 수
  6. 프로그래머스 코딩테스트 연습 - 다른 문제 풀이(자바스크립트)
반응형

문제 설명

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주세요.

제한 조건

  • x는 1 이상, 10000 이하인 정수입니다.

초기 코드

function solution(x) {
    var answer = true;
    return answer;
}

코드 풀이 설명

function solution(x) {
    // 더해줄 sum에 초기값 0 할당
    let sum = 0;
    
    // 자릿수를 더하기 위해 문자열로 변환하여 쪼개기
    let result = String(x).split('');
    
    // sum의 초기값에 숫자로 변환한 result의 i번째 인덱스를 더해줌
    for (let i = 0; i < result.length; i++) {
      sum += Number(result[i]);  
    }
    
    // x를 sum으로 나눴을 때 나누어 떨어지면 true, 아니면 flase
    return (x % sum === 0) ? true : false;
}
  • X는 1 이상, 10000 이하인 정수이므로 자릿수를 더해주기 위해 문자열로 변환한다.
  • 문자열로 변환한 후 for문을 이용해 result의 길이만큼 돌린 후, sum에 할당되어있는 0에 result의 i번째 인덱스들을 숫자로 바꿔 더해준다.
  • 그 후 원래 숫자인 X를 sum으로 나눈 나머지가 0일 경우 true를 반환하고 아닐 경우 false를 반환한다.

프로그래머스 코딩테스트 연습 - 하샤드 수

 

코딩테스트 연습 - 하샤드 수

양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하

programmers.co.kr


프로그래머스 코딩테스트 연습 - 다른 문제 풀이(자바스크립트)

 

[코딩테스트 연습] 정수 제곱근 판별 자바스크립트 풀이

문제 설명 임의의 양의 정수 n에 대해, n이 어떤 양의 정수 x의 제곱인지 아닌지 판단하려 합니다. n이 양의 정수 x의 제곱이라면 x+1의 제곱을 리턴하고, n이 양의 정수 x의 제곱이 아니라면 -1을 리

choijying21.tistory.com

 

[코딩테스트 연습] 정수 내림차순으로 배치하기 자바스크립트 풀이

문제 설명 함수 solution은 정수 n을 매개변수로 입력받습니다. n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해주세요. 예를들어 n이 118372면 873211을 리턴하면 됩니다. 제한 조

choijying21.tistory.com

 

반응형
저작자표시 비영리 동일조건 (새창열림)
  1. 문제 설명
  2. 제한 조건
  3. 초기 코드
  4. 코드 풀이 설명
  5. 프로그래머스 코딩테스트 연습 - 하샤드 수
  6. 프로그래머스 코딩테스트 연습 - 다른 문제 풀이(자바스크립트)
'알고리즘' 카테고리의 다른 글
  • [코딩테스트 연습] 내적 자바스크립트 풀이
  • [코딩테스트 연습] 정수 제곱근 판별 자바스크립트 풀이
  • [코딩테스트 연습] 정수 내림차순으로 배치하기 자바스크립트 풀이
  • [코딩테스트 연습] 자연수 뒤집어 배열로 만들기 자바스크립트 풀이
도잎
도잎
프론트엔드 개발 성장기록
도잎
JDevelog
도잎
전체
오늘
어제
반응형
  • 분류 전체보기 (149)
    • Web dev (48)
      • React (22)
      • Vue (8)
      • Next.js (6)
      • Node.js (2)
      • Springboot (2)
    • App dev (2)
      • Flutter (2)
    • Language (33)
      • javascript (30)
      • typescript (2)
      • java (1)
    • StyleSeet (3)
      • CSS (3)
      • Sass (0)
    • Database (2)
      • PostgreSQL (1)
    • DevOps (11)
      • Webpack (4)
      • Linux (3)
      • Docker (2)
      • Tomcat (1)
    • 개발지식 (2)
      • Web (1)
    • 항해99(6기) (20)
    • UXUI (0)
    • 알고리즘 (25)
    • 유용정보 (2)

최근 글

hELLO · Designed By 정상우.v4.2.1
도잎
[코딩테스트 연습] 하샤드 수 자바스크립트 풀이
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.