为了账号安全,请及时绑定邮箱和手机立即绑定

将一个正整数分解质因数

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

package com.imooc;
import java.util.Scanner;

public class Ques2 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        Ques2 ques2 = new Ques2();
        //循环输入要被分解的整数
        do{                     
            int num = input.nextInt();
            System.out.print(num + "=");
            int i=2;
            int quotient=1;
            //循环输出质因数   
            do{
                if(ques2.primeNum(i)){                  
                    if(num % i == 0){
                        quotient = num/i;
                        System.out.print(i);
                        if(quotient == 1){
                            System.out.println();
                            break;
                        }else{
                            System.out.print("*");
                            num = quotient;
                        }
                    }else{
                        i++;
                    }
                }else{
                    i++;
                }
            }while(true);
        }while(true);
    }
    //判断一个整数是否为质数的方法:
    //小于3的整数中只有2为质数。大于等于3的整数a,如果全部都不能被整除2到n-1之间的整数,则n为质数。
    public static boolean ifPrNum(int n){
        if(n<3){ 
            if(n==2){
                return true;
            }else{
                return false;
            }
        }else{ 
            for(int i=2; i<n; i++){ //n依次除以2到n-1之间的数i
                if(n % i ==0){      //是否n能被i整除
                    return false; 
                }
            }
        return true;
        } 
    }
}
点击查看更多内容
1人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消