zoukankan      html  css  js  c++  java
  • 把一个数分解成最小乘积[Java]

    /**
     * 时间:2012年11月15日 18:54:54
     * 内容:一道面试题: 把一个数分解成最小乘积
     *             请输入要分解的数字:90
     *                90=2*3*3*5
     *            请输入要分解的数字:123
     *                 123=3*41
     */
    private static void resolve() {
        int exit = 1;
        while(exit==1){
            try {
            System.out.print("请输入要分解的数字:");
            Scanner sc = new Scanner(System.in);
            int hei = sc.nextInt();
            if(hei==0)
                break;
            int temp = hei;
            boolean flag = true;
            boolean t = false;
            StringBuilder sb = new StringBuilder();
        
            while(flag){
                for(int i=3; i<=temp; i+=2){
                    if(i==3 && temp%2==0){
                        sb.append("2*");
                        temp=temp/2;
                        break;
                    }
                    if(temp%i==0){
                        sb.append(i+"*");
                        temp = temp/i;
                        if(temp==1){
                            flag = false;
                        }
                        break;
                    }
                }
            }
            String result = sb.toString();
            result = result.substring(0, result.length()-1);
            System.out.println(hei+"="+ result);
            } catch (Exception e) {
                System.err.println("请输入数字..");
            }
        }
        System.out.println("退出..............");
    }

  • 相关阅读:
    java 设计模式 (一)
    多Linux安装
    华北电力大学 研究生学院 笔记
    电力大学 专升本
    19年 考研究生 过程
    netcat-flume-logger
    大神写的K8S 二进制安装笔记
    非常全的Mybatis学习笔记
    Docker-compose部署gitlab
    docker-compose 配合 dockerfile使用
  • 原文地址:https://www.cnblogs.com/qintangtao/p/2772077.html
Copyright © 2011-2022 走看看