• AJPFX:不用递归巧妙求出1000的阶乘所有零和尾部零的个数


    package com.jonkey.test;

    import java.math.BigInteger;

    public class Test6 {

    /**
    * @param args
    *  需求:求出1000的阶乘所有零和尾部零的个数,不用递归做
    */
    public static void main(String[] args) {
    /*int result = 1;
    for(int i = 1; i <= 1000; i++) {
    result = result * i;
    }

    System.out.println(result);         //因为1000的阶乘远远超出了int的取值范围
    */
    //demo1();
    demo2();
    }

    public static void demo2() {         //获取1000的阶乘尾部有多少个零
    BigInteger bi1 = new BigInteger("1");
    for(int i = 1; i <= 1000; i++) {
    BigInteger bi2 = new BigInteger(i+"");
    bi1 = bi1.multiply(bi2);        //将bi1与bi2相乘的结果赋值给bi1
    }
    String str = bi1.toString();        //获取字符串表现形式
    StringBuilder sb = new StringBuilder(str);
    str = sb.reverse().toString();        //链式编程

    int count = 0;         //定义计数器
    for(int i = 0; i < str.length(); i++) {
    if('0' != str.charAt(i)) {
    break;
    }else {
    count++;
    }
    }

    System.out.println(count);
    }

    public static void demo1() {         //求1000的阶乘中所有的零
    BigInteger bi1 = new BigInteger("1");
    for(int i = 1; i <= 1000; i++) {
    BigInteger bi2 = new BigInteger(i+"");
    bi1 = bi1.multiply(bi2);        //将bi1与bi2相乘的结果赋值给bi1
    }
    String str = bi1.toString();        //获取字符串表现形式
    int count = 0;
    for(int i = 0; i < str.length(); i++) {
    if('0' == str.charAt(i)) {        //如果字符串中出现了0字符
    count++;         //计数器加1
    }
    }
    System.out.println(count);
    }

    }
       
    String[] arr1 = new String[4];
    arr1[0]="hong";
    arr1[1]="hei";
    arr1[2]="hua";
    arr1[3]="p";

    int[] arr2 = new int[13];
    for (int i = 0; i < 4; i++) {
    for (int j = 0; j < 13; j++) {
    arr2[j] = j+1;

    System.out.println(""+arr1[i]+arr2[j]);
    }

  • 相关阅读:
    封装父子级关系
    linux 中vim编辑器8.2版右键无法粘贴,而计入visual模式的解决方法
    linux 中查看、抽取本机IP
    linux centos7 升级 vim7.4位8.2
    linux 系统中如何匹配指定数目的连续多个字符
    linux 中 vim backspace无法删除
    vim 编辑器 shell脚本无颜色
    linux 中 if条件分支语句
    linux中自动检测服务脚本(apache举例)
    linux 中 常用的条件判断语句
  • 原文地址:https://www.cnblogs.com/AJPFX/p/10879616.html
Copyright © 2020-2023  润新知