• 蓝桥杯-循环节长度-java


    /* (程序头部注释开始)

    * 程序的版权和版本声明部分

    * Copyright (c) 2016, 广州科技贸易职业学院信息工程系学生 

    * All rights reserved.

    * 文件名称: 蓝桥杯赛题                           

    * 作    者:   彭俊豪               

    * 完成日期:   2016   年 04月 01日

    * 版 本 号:      001   

    * 对任务及求解方法的描述部分

    * 问题描述:

    两个整数做除法,有时会产生循环小数,其循环部分称为:循环节。
    比如,11/13=6=>0.846153846153..... 其循环节为[846153] 共有6位。
    下面的方法,可以求出循环节的长度。

    请仔细阅读代码,并填写划线部分缺少的代码。

    public static int f(int n, int m)
    {
    n = n % m;
    Vector v = new Vector();

    for(;;)
    {
    v.add(n);
    n *= 10;
    n = n % m;
    if(n==0) return 0;
    if(v.indexOf(n)>=0) _________________________________ ; //填空
    }
    }

    * 输入描述:  

     * 程序输出:  注意,只能填写缺少的部分,不要重复抄写已有代码。不要填写任何多余的文字。

    * 程序头部的注释结束

    */

    上代码:

    import java.util.Vector;

    public class Main {

      public static void main(String[] args) {
        System.out.println(f(11, 13));

      }
      public static int f(int n, int m)
      {
        n = n % m;
        Vector v = new Vector();

        for(;;)
        {
          v.add(n);
          n *= 10;
          n = n % m;
          if(n==0) return 0;
            if(v.indexOf(n)>=0) return v.size()-v.indexOf(n); //填空
        }
      }

    }

  • 相关阅读:
    ThreadLocal、InheritableThreadLocal、TransmittableThreadLocal使用及原理解析
    Spring Cloud入门教程
    极简策略模式
    MySQL热点行更新
    OpenResty安装、启动脚本及Lua脚本调试
    Spring Cloud Netflix超时时间设置
    SpringCloudCommons模块
    [转]Spring Boot @EnableConfigurationProperties @ConfigurationProperties注解配置原理源码分析
    SpringCloudContext模块
    [转]Spring源码解析之@Configuration
  • 原文地址:https://www.cnblogs.com/pengjunhao/p/6673993.html
Copyright © 2020-2023  润新知