2009~2014/C/C++
[C언어 기출문제&풀이] 소인수 분해
malu
2010. 11. 10. 21:08
프로그램 명: pfactor
제한시간: 1 초
수를 곱으로 표현 할 때 , 곱으로 표현된 각 수를 인수라 하고 인수가 소수일 때 이를 소인수라 한다.
20 = 4 * 54 , 5 는 20 의 인수이다. 이 중 5 는 소인수 이다.
어떤 수를 소인수의 곱을 나타낼 때 이를 소인수 분해라 한다.
자연수를 입력으로 받아 소인수 분해하는 프로그램을 작성하는 것이 문제이다. 소인수 사이의 곱셈 기호는 생략하고 소인수는 크기순으로 출력한다.
입력
2 이상 100 000 이하의 자연수가 입력으로 주어진다.출력
입출력 예
입력 5 출력 5 입력 10 출력 2 5 입력 20 출력 2 2 5 입력 8 출력 2 2 2
출처: dovelet
소스코드
#include <stdio.h>
int main()
{
int n,i,j;
scanf("%d",&n);
for(i=2;i<=n;i++)
{
if(n%i==0)
{
n/=i;
printf("%d ",i);
i=1;
}
}
}