首页 > 代码库 > 4 因数分解

4 因数分解

题目:将一个正整数分解质因数。
* 例如:输入90,打印出90=2*3*3*5。
* 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:  
* (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
* (2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
* (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

 1         public class _004YinShiFenJie {
 2 
 3     public static void main(String[] args) {
 4         Scanner scanner = new Scanner(System.in);
 5         System.out.println("请输入一个正整数 :");
 6         while (true) {
 7             int x = scanner.nextInt();
 8             primeSplit(x);
 9         }
10     }
11 
12     public static void primeSplit(int n) {
13         int k = 2;
14         System.out.print(n + " = ");
15         while (k <= n) {
16             if (k == n) {
17                 System.out.println(n);
18                 break;
19             } else if (n % k == 0) {
20                 System.out.print(k + "*");
21                 n = n / k;
22             } else
23                 k++;
24         }
25     }
26 }

 

4 因数分解