服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - Java教程 - Java将一个正整数分解质因数的代码

Java将一个正整数分解质因数的代码

2020-08-17 14:37java教程网 Java教程

这篇文章主要介绍了将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5,需要的朋友可以参考下

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:
1、如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

2、如果n <> k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你,重复执行第一步。

3、如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

程序设计:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
public class exp2{
  public exp2(){}
  public void fengjie(int n){
    for(int i=2;i<=n/2;i++){
      if(n%i==0){
        System.out.print(i+"*");
        fengjie(n/i);
        }
    }
    System.out.print(n);
    System.exit(0);///不能少这句,否则结果会出错
    }
    public static void main(String[] args){
       String str="";
       exp2 c=new exp2();
       str=javax.swing.JOptionPane.showInputDialog("请输入N的值(输入exit退出):");
       int N;
       N=0;
       try{
           N=Integer.parseInt(str);
           }catch(NumberFormatException e){
             e.printStackTrace();
             }
      System.out.print(N+"分解质因数:"+N+"=");
      c.fengjie(N);
    
}

延伸 · 阅读

精彩推荐