c·c++/c++ 프로그래밍

소인수 분해

바로이순간 2013. 4. 8. 10:51

#include <iostream>

using namespace std;

int main() {

  int n;

  int b, c=0;

  cout<<"정수: ";

  cin>>n;

  c=n;

  if(c%2==0) { // 먼저 2로 나누어 떨어지는지 봅니다.

    while(c%2==0) { 

        c=c/2;

        cout<<"2";

        if(c>1) cout<<"*";

    }

  }

  // 3이상의 홀수로 나누어 봅니다.

  for(b=3;b*b<=c;b=b+2) {

    if(c%b==0) {

      while(c%b==0) {

        c=c/b;

        cout<<b;

        if(c>1) cout<<"*";

      }

    }

  }

  if(c>1) cout<<c;


  return 0;

}

'c·c++ > c++ 프로그래밍' 카테고리의 다른 글

c++ 입력오류 해결  (0) 2013.05.31
복소수 클래스  (0) 2013.05.04
complex number class (복수수 클래스)  (0) 2012.12.08
스택 클래스  (0) 2012.11.05
다항식의 곱셈  (0) 2012.09.24