分解質因數:
根據數論的知識可知,任何一個合數都可以寫成幾個質數相乘的形式,這幾個質數都叫做這個合數的質因數。例如,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;
}
}