问题

将一个大于零的整数分解为质数(质因数)相城

分析:

  1. 初设一个质数k,并赋值最小质数:2,即k=2
  2. 如果这个整数n等于k,则停止分解。
  3. 如果n能够被k整除,也就是n%k=0,那么n就换为n/k 继续循环。
  4. 如果n不能被k整除,则让k增加,k++,再进行前述循环

    package sloveproblems;

    import java.util.Scanner;

    public class PrimeFactor {

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        System.out.print(n + "=");
        int k = 2;
    
        while(k<=n){
            if (k==n){
                System.out.print(k);
                break;
            } else if( n%k == 0){
                System.out.print(k + "*");
                n = n/k;
            } else {
                k += 1;
            }
        }
    
    }
    

    }


老齐Py
957 声望290 粉丝