/**
将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
思路:1.定义一个变量从键盘接收一个正整数,如果不是正整数提示重新输入。
2.分解质因数:定义i从1到number遍历,计算number%i的余数, 如果余数为零,则输出i*(一个因子)
然后将number的值置为number/i,i的值重置为1,继续执行循环,直到i=number;输出number。
3.可以先判断一下这个数是不是素数,如果是素数,直接输出1*number;如果不是素数,在分解质因数;
*/
import java.util.*;
class Test4
{
public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
int number=0;
while(number<=0){
System.out.println("请输入一个正整数:");
number=input.nextInt();
}
System.out.print(number+" = ");
for (int i=2;i<number ;i++ )
{
int r = number % i;
if (r==0)
{
System.out.print(i+"*");
number= number/i;
i=1;
}
}
System.out.println(number+"。");
}
}
|
|