본문 바로가기
C C++/C C++ 유용한 알고리즘 기법

[C/C++] 정수 자릿수의 합 구하기

by Go! Jake 2022. 7. 17.

알고리즘 문제를 풀다 보면 정수 각 자릿수의 합을 구하라는 문제가 있음. 주로 나는 입력된 정수값을 문자열 배열에 각 자릿수를 넣고, 그 자릿수를 각각 정수화해서 더했는 데, 이보다 쉬운 방법을 찾게 됨.

 

정수 자릿수의 합 구하기

#include <iostream>

int main()
{
	int a=12345;
	int sum=0;
	while (a>0){
		sum+=a%10;
		a=a/10;
	}
	printf("%d", sum);	
	return 0;
}

1) a를 10으로 나눈 나머지는 1의 자릿수이다. 그 값을 정수 sum 변수에 더한다.

2) a를 10으로 나눈 후 다시 반복한다. 이는 a를 10으로 나누면 0이 나올 때까지 반복한다.

그러면 모든 자릿수를 더한 값을 구할 수 있다.

댓글