分解质因数:
根据数论的知识可知,任何一个合数都可以写成几个质数相乘的形式,这几个质数都叫做这个合数的质因数。例如,24=2*2*2*3。把一个合数写成几个质数相乘的形式,称为分解质因数。对于一个质数,它的质因数可以是本身。
请编程写一个程序实现分解质因数。
import java.util.Scanner;
/**
*
* 分解质因数。根据数论的知识可知,任何一个合数都可以写成几个质数相乘的形式,这几个质数都叫做这个合数的质因数。
* 例如,24=2*2*2*3。把一个合数写成几个质数相乘的形式,称为分解质因数。
* 对于一个质数,它的质因数可以是本身。请编程写一个程序实现分解质因数。
*
*/
public class PrimeFactorization {
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
int num=input.nextInt();
input.close();
int temp=1;
int n=num;
String s="";
for (int i = 2; i <= n; i++) {
if (temp==num) {
break;
}
if(isPrime(i)){
while (n%i==0) {
temp*=i;
n/=i;
if(temp==num){
s+=String.valueOf(i);
break;
}else{
s+=String.valueOf(i)+"*";
}
}
}
}
System.out.println(num+"="+s);
}
public static boolean isPrime(int i){
for (int j = 2; j <= i/2; j++) {
if(i%j==0){
return false;
}
}
return true;
}
}