본문 바로가기

아래로 스크롤 해주세요!

My Reference Book

-

제가 배웠던것을 한곳에 정리해보았어요!

HTML

HTML 태그 톺아보기

HTML

자세히보기

CSS

CSS 속성 톺아보기

CSS

자세히보기

JAVASCRIPT

JS 실행문 톺아보기

JAVASCRIPT

자세히보기

최신댓글

프로그래머스

프로그래머스 1단계 : 하샤드 수!

by C0Di 2022. 11. 8.
728x90

프로그래머스 1단계

하샤드 수를 하샤하게 풀어보도록 하겠습니다
하샤한 마음으로 출발~~~~~~🕺🏻


하샤드 수!

do while문을 통해 계산 후 최종적으로 num과 sum의 나머지를 !로 반전시켜 true/false 여부를 결정짓는 방법입니다.

1. num은 x, sum은 0d으로 설정합니다.
2. do while문을 통해
3. sum에 x나누기 10 한 값을 sum에 더해주고
4. x에는 x나누기 10을 한 값을 반올림하여 x에 저장시켜 준뒤
5. x가 0 초과가 될때까지 반복시켜줍니다.
6. 최종적으로 num나누기 sum의 나머지 값에 !를 붙여 false는 true로, true는 false가 나오도록 해줍니다.

function solution(x) {
    let num = x;
    let sum = 0;
    do {
        sum += x%10;
        x = Math.floor(x/10);
    } while (x>0);

    return !(num%sum);
}

하샤드 수 : 다른 사람 풀이

for와 if를 통한 각 strn에 저장된 값을 정수로 변환 후 Num에 저장시켜 n과 나눈 값을 기준으로 true/false를 결정짓는 방법입니다.

1. strn은 n의 값을 string으로 변환한 값을
2. num은 0의 값을 담습니다
3. for를 통해 i의 값은 0, strn의 길이의 미만이 될때까지 i를 증가시켜 줍니다
4. strn에 담긴 i번째 값을 정수로 변환 후 num에 더해줍니다
5. 위와 같은 과정을 거친 뒤 if를 통해 n나누기 num의 나머지가 0과 같다면
6. result에 true를 저장 아닐시 result에 false 저장
7. 최종적으로 result 값을 반환.

function Harshad(n){
    var result;
    var strn = n.toString();
    var num = 0;
  
    for (var i=0; i<strn.length; i++) {
      num += parseInt(strn[i]);
    }
    if (n % num === 0) {
      result = true;
    } else {
      result = false;
    }
    return result;
  }
728x90
반응형

댓글

#HASH_TAGS

-

1

공부 코드 오늘 조업 마감했습니다. 오징어 1Kg 당 3000원 숙제가 다양해서 너무 좋아요 scroll-snap-type 슬라이드 결과 : 월요일 코딩 Method 선택해주세요 오늘은 내가바로 오징어! 제이쿼리 메서드 scroll-snap-align 다크모드 오징어 두마리 포획 완료 오늘도 웹표준은.. ImageSlideEffect 내일은 즐거운 월요일 HTML 멈추지 않는 ' j ' 시리-즈 화사한가요? JQuery 필터선택자 이건 또 뭐람 오징어 한마리 수확 완료! 울적하니 꽃을 달아봤습니다