[4] prime factor decomposition procedure 4
Title: a positive integer decomposition of the quality factor. For example: the input 90, to print out 90 = 3 * 2 * 3 * 5.
Analysis procedures: decomposition of the quality factor n, should find a smallest prime number k, then the following procedure is completed:
(1) If the prime exactly equal to n, then the prime factor decomposition process has been completed, it can be printed out.
(2) If n <> k, n but k can be divisible should print out the value of k, and k is divided by n using, as a new positive integer n, the first step is repeatedly executed.
(3) if n is not divisible by k, k + 1 is used as the value of k, the first step is repeatedly performed.
package cskaoyan; import org.junit.Test; public class cskaoyan4 { @Test public void zhiYinShu() { java.util.Scanner in = new java.util.Scanner(System.in); int number = in.nextInt(); int prime = 2; in.close(); if (number < 2) { return; } else { System.out.print(number + "="); while (number != prime) { if (number % prime == 0) { System.out.print(prime + "*"); number = number / prime; } else { prime = nextPrime(prime); } } System.out.print(number); } } public int nextPrime(int number) { number = number + 1; while (true) { if (isPrime(number)) { return number; } else { number = number + 1; } } } public boolean isPrime(int number) { boolean flag = true; if (number < 2) { flag = false; } else if (number == 2) { flag = true; } else { for (int i = 2; i <= Math.sqrt(number); i++) { if (number % i == 0) { flag = false; break; } } } return flag; } }