Java練習(四)--分解質因數
阿新 • • 發佈:2018-07-09
pre stat 輸入9 分析 新的 重復執行 質數 n) code
題目:將一個正整數分解質因數。例如:輸入90,打印出90=2*3*3*5。
程序分析:對n進行分解質因數,應先找到一個最小的質數k,然後按下述步驟完成:
(1)如果這個質數恰等於n,則說明分解質因數的過程已經結束,打印出即可。
(2)如果n<>k,但n能被k整除,則應打印出k的值,並用n除以k的商,作為新的正整數n,重復執行第一步。
(3)如果n不能被k整除,則用k+1作為k的值,重復執行第一步。
public class Test1 { public void zhi(int n) { System.out.print(n+"="); for(int i=2;i<=n;i++){ while(n%i==0 && n!=i){ n/=i; System.out.print(i+"*"); } if(n==i){ System.out.println(i); break; } } } public static void main(String[] args) { Test1 test= new Test1(); test.zhi(20); } }
Java練習(四)--分解質因數