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("退出..............");
    }

  • 相关阅读:
    信息安全系统设计基础第九周学习总结
    信息安全系统设计基础第八周期中总结
    信息安全系统设计基础第七周学习总结
    深入理解计算机系统第六章家庭作业之6.35 6.36
    深入理解计算机系统第二、三章家庭作业之2.64 2.65 3.66 3.68
    信息安全系统设计基础第六周学习总结
    信息安全系统设计基础第五周学习总结
    JAVA 之 多态 抽象 接口
    JAVA 之 继承
    java.lang 类String
  • 原文地址:https://www.cnblogs.com/qintangtao/p/2772077.html
Copyright © 2011-2022 走看看