Java 中已給數字的第 k 個質因數


以下 Java 程式列印某個數字 n 的第 k 個質因數,其中給出了 k 和 n。

程式

import java.util.Scanner;

public class KthPrimeFactor {
   public static void main(String args[]) {
      int number, k, factor = 0;
      Scanner sc = new Scanner(System.in);
      System.out.println("Enter a number :");
     
      number = sc.nextInt();
      System.out.println("Enter the k value :");
      k = sc.nextInt();
      int temp = k-1;
     
      for(int i = 2; i< number; i++) {
         while(number%i == 0) {
            if(temp == 0) {
               factor = i;
            }
            temp--;
            System.out.println(i+" ");
            number = number/i;
         }
      }
      System.out.println(k+"th prime factor of the given number is :"+factor);
      if(number >2) {
         System.out.println(number);
      }
   }
}

輸出

Enter a number :
216
Enter the k value :
3
2
2
2
3
3
3
3th prime factor of the given number is :2

更新於: 2020-06-25

316 次瀏覽

開啟您的 職業生涯

完成該課程後獲得認證

開始吧
廣告