输入一个正整数,将其分解质因数。例如:输入90,打印出90=2*3*3*5。

  • Post author:
  • Post category:其他




题目:输入一个正整数,将其分解质因数。例如:输入90,打印出90=2

3

3*5。

分析:定义一个变量i为2,任何一个数的因数都是从最小的2开始慢慢递增到自身。如果n对2取余为0,说明整除了,那么2就是其中的一个因数,因为循环有自带的迭代++,所以i的值要重新定义为1

代码:


import java.util.Scanner;

public class demo {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个正整数");
        int n = sc.nextInt();
        System.out.print(n+"=");
        for(int i=2;i<=n;i++){
            if(n%i==0){
                System.out.print(i);
                n/=i;
                //因为i遍历一遍之后需要进行++操作,所以i=1
                i=1;
            }
            //*号比因数的个数少1,所以最后一个因数后面不能有*,最后一次循环时,n<2
            if(n>=2){
            	System.out.print("*");
            }
        }










    }


}



版权声明:本文为m0_46287385原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。