zoukankan      html  css  js  c++  java
  • 将一个正整数分解质因数

    题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。  
    程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:  
    (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。  
    (2)如果n <> k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。  
    (3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。
     
    import java.util.*;
    
    public class lianxi03{
        public static void main(String[] args){
            Scanner s = new Scanner(System.in);
            System.out.print( "请键入一个正整数:     ");
            int n = s.nextInt();
            //判断n是否为素数
            boolean flag = true;
            for(int i = 2; i <= Math.sqrt(n); i++){
                if(n % i == 0){
                    flag = false;
                    break;
                }
            }
            if(flag){
                System.out.println(n + "= 1 * " + n);
            }else{
                //k为最小质数
                int k = 2;
                System.out.print(n + " = ");
                while(k <= n){
                    if(n == k){
                        System.out.print(k);
                        break;
                    }
                    else if(n % k == 0){
                        System.out.print(k + "*");
                        n = n / k;
                    }
                    else 
                        k++;
                }
            }
        }
    }
  • 相关阅读:
    Nhibernate对象转JSON
    C# Windows服务
    C# 接收http请求
    C# XML 基础解系
    C# XML 序列化与反序列化
    C# Newtonsoft.Json 应用
    C# 读取自定义XML
    对图片添加水印
    iText: 对pdf文件添加水印
    java对Office文件处理技术(介绍)
  • 原文地址:https://www.cnblogs.com/wannianma/p/2977887.html
Copyright © 2011-2022 走看看