익명의 개발노트

sumDigits 구하기 본문

프로그래밍 관련자료/알고리즘

sumDigits 구하기

캡틴.JS 2019. 3. 8. 14:16
반응형



숫자의 합계구하기.


var output = sumDigits(1148);
console.log(output); // --> 14


var output = sumDigits(-316);
console.log(output); // --> 4


앞이 양수이거나, 음수일때 숫자의 합 구하기.


양수인 경우 그냥 다 더하면 된다.


음수의 경우, 양의 숫자가 어디서 시작하는지 확인해야한다,


1. 숫자인덱스[2]부터 양수다.


2. 숫자를 문자열로 변환한다.


3. 음수일때의 값을 미리 sum에다가 만들어 저장한다..


4. 저장된 sum에다가 나머지수를 더해준다.


5. 최종값 리턴한다.



var sum =0;


var positiveNumStartIndex =0;


var numToString = 숫자값.toString();


if(숫자값<0) {

sum -= numToString[1]; // 해줘야 음수됨. (인덱스 0은 - 임., 그래서 인덱스 1로 해준거) 

     positiveNumStartIndex +=2; 

}


for(var i =positiveNumStartIndex ; i<numToString .length; i++){
    sum += Number(numToString[i]);   //Number 처리안해주면 음수들끼리 붙어버림. ex) -3-316이렇게..

}

return sum;

반응형

'프로그래밍 관련자료 > 알고리즘' 카테고리의 다른 글

repeatStirng 리커시브하게 풀기  (0) 2019.04.09
Hash Table  (0) 2019.04.09
convertObjectToArray3  (0) 2019.03.08
JSON.stringify의 원리  (1) 2019.03.07
getElementsByClassName 원리  (0) 2019.03.07
Comments