因式分解:将一个数分解成几个素数的积
把一个整数因式分解,就是要找到它所有的素数因子
第一,找到一个数,这个数能将要分解因式的数整除
第二,如果这个数是素数,则保存这个数
第三,继续分解除以素数因子得到的商
用ArrayList保存这些素数因子,再按字符串的格式打印即可完成
import java.util.ArrayList;
import java.util.Scanner;
public class Factorization {
public static void Factorize(int n){
int key=1;
int num=n;
ArrayList list=new ArrayList();
while(num>1){
for(int i=2;i<=num;i++){ //从2开始除到本身,用于判断素数
if(num%i==0){ //找到素数因子
key=i;
list.add(key); //保存这个素数因子
break;
}
}
num=num/key; //继续分解除以素数因子得到的商
}
System.out.print(n+"=");
for(int i=0;i
if(i!=list.size()-1)
System.out.print(list.get(i)+"×");
else
System.out.print(list.get(i));
}
}
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
System.out.print( "请键入一个正整数:");
int n = s.nextInt();
Factorize(n);
}
}