目录
题目描述
代码实现
结果展示
题目描述
将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
代码实现
import java.util.Scanner;public class Example03 {public static void main(String[] args) {int x;//定义从键盘输入Scanner in = new Scanner(System.in);//提示System.out.print("请输入一个正整数:");//将从键盘输入的数赋值给xx = in.nextInt();//匿名初始化一个对象,还有参数的构造函数new PrimeSplit(x);}}class PrimeSplit {//将最小的质数赋值给kint k = 2;public PrimeSplit(int x) {//小于等于1的数不可以分解if (x <= 1) {System.out.println(x + "是无效的被分解数");} else if (x == 2) {//如果输入的是最小质数2System.out.println(x + "分解后的质因数为: 1*" + x);} else {//1是所有的正整数的质数System.out.print(x + "分解后的质因数为: 1");//输入的数可以被k整除while (k <= x) {if (x % k == 0) {//将k添加到结果中System.out.print("*" + k);//除以最小质数后重新循环x = x / k;} else {k++;}}}}}