BLOG ARTICLE 소인수분해 | 1 ARTICLE FOUND

  1. 2008.04.07 자바로 구현한 소인수분해 알고리즘


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Vector;


public class Soinsu {

 public static void main(String[] args) throws IOException{
  BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
  Vector v = null;
  int k = 2;
  int y = 1;
  int i = 0;
 
  Vector s = new Vector();
 
  System.out.print("숫자를 입력 : ");
  int n = Integer.parseInt(in.readLine());
 
  if ( n > 2 ) {
   for (i = 0; i < 100; i++) {
    if (n%k == 0) {
     s.add(k);
     n /= k;
    }else{
     k += 1;
    }
    if (n == 1) {
     break;
    }
   }
  }else{
   if (i == 0) {
    System.out.println("소수!");
   }
  }
  for (int j = 0; j < s.size()-1; j++) {
   System.out.print(s.elementAt(j)+" * ");
  }
  System.out.println(s.lastElement());
 
 }
}




AND