본문 바로가기

열정가득한 개발자의 이야기/프로그래머스 문제

프로그래머스 lv0. 자릿수 더하기 - 2번째

 

프로그래머스 문제 2

 

문제를 봤을 때, 했던 생각

1) 하나씩 더해주려면 for loop이 필요하겠군

2)어라 그러면 배열 이어야 하는데. 뭐 배열로 만들어주지 뭐

 

2) -> 숫자열을 배열로 만들어주려면 먼저 string 배열로 만든 다음, 다시 숫자로 변환해야 합니다.

그래서  var  a = [... String(n)]. map(Number) : string배열로 만들고,... String으로 개별 문자들로 만들어줍니다.

예로 String(n)이니까 "123"이렇게 바꿔진 걸... String이 "1", "2", "3"이렇게 바꿔줍니다.

그 후, map(Number)가 숫자로 변경해 줘요! -> [1,2,3] 이렇게요!

 

그럼 1번을 실행하기 위한 밑작업이 끝났으니 1번 작업을 진행합니다.

for 문만 쓰는 거 같아서 do... while문으로도 사용해 봤어요! 

 

do... while문은 do 부분이 참이면 while부분을 진행하는 겁니다.

뭐. do부분은 한 번만 진행한다고 보시면 될 거 같아요!

 

제 답안은 아래와 같습니다.! 

 

function solution(n) {
    var answer = 0;
    var  a = [... String(n)]. map(Number)
    for(i =0; i < a.length; i++){
        answer += a [i]      
    }
    // let i = 0
    // do {
    //     console.log(answer += a [i] )
    //     i++
    // } while(i <a.length)
    return answer;
}

 

* 틀린 부분 있으면 제발 제발 알려주세요..!ㅜㅜ