티스토리 뷰

반응형

Using Language : Java
Using Tool : Eclipse


  • 프로그래머스 문제 소개

< 자릿수 더하기 >

문제 설명

자연수 N이 주어지면, N의 각 자릿수의 합을 구해서 return 하는 solution 함수를 만들어 주세요. 예를들어 N = 123이면 1 + 2 + 3 = 6을 return 하면 됩니다.

제한 조건

  • N의 범위 : 100,000,000 이하의 자연수

예시

	N 		answer 
	123 	6 
    	987 	24

의사코드

  1. Int 값으로 받은 n을 String형으로 변형시켜서 String배열에 한글자씩 넣어주기
  2. for문으로 String배열 길이만큼 돌려주기
  3. String 배열에 들어있는 값을 Integer형으로 변환해서 answer에 넣어주기

위에처럼 생각하고 풀었는데 더 편한 코드가 보여서 코드를 두가지 첨부하였다..(머쓱)

주석처리된 부분이 처음 의사코드를 작성하고 풀이한 코드이다.

<Solution15.java>

package level1;

public class Solution15 {
	
	public int solution(int n) {
        int answer = 0;
        
		/*
		 * String[] sum = Integer.toString(n).split("");
		 * 
		 * int len = sum.length;
		 * 
		 * for(int i=0;i<len;i++) { answer+=Integer.parseInt(sum[i]); }
		 */

        while(n!=0) {
        	answer+=n%10;
        	n/=10;
        }
        
        return answer;
    }

}

<Solution15Test.java>

package level1;

import static org.junit.jupiter.api.Assertions.assertEquals;

import org.junit.Test;

public class Solution15Test {
	
	@Test
	public void 결과() {
		Solution15 solution = new Solution15();
		
		assertEquals(6, solution.solution(123));
		assertEquals(24, solution.solution(987));
	}
}

 

github에서 코드 확인하기

 

udud0510/CodeKata

프로그래머스 문제풀이. Contribute to udud0510/CodeKata development by creating an account on GitHub.

github.com

 

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함