zoukankan      html  css  js  c++  java
  • 动手动脑

    Modulus=231-1=int.MaxValue

    Multiplier=75=16807

    C=0

    当显示过231-2个数之后,才可能重复。

    动手动脑: 编写一个方法,使用以上算法生成指定数目(比如1000个)的随机整数。

    public class suiji

    {

      private static final int N = 200;

      private static final int LEFT = 40;

      private static final int RIGHT = 10000;

      private static long x0 = 1L;

      private long a = 1103515245L;

      private long c = 12345L;

      private long m = 2147483648L;

      // 产生随机数

      private long rand ( long r )

      {

        // a,c,m为常数

        r = ( r * a + c ) % m;//Xn+1=(aXn + c)mod m

        return r;

      }

      private long little ( int a, int b, long rand )

      {

        return a + rand % ( b - a + 1 );

      }

      private void recursion ( int count, long rand )

      {

        if (count >= N)

        {

          return;

        }

        rand = rand (rand);

        long r = little (LEFT, RIGHT, rand);

        System.out.print (r + " ");

        recursion (++count, rand);

      }

      public static void main ( String[] args )

      {

        suiji recur = new suiji ();

        recur.recursion (0, x0);

      }

    }

    请看以下代码,你发现了有什么特殊之处吗?

     分别用整数和浮点数进行了方法的重载

    (1)方法名相同;

    (2)参数类型不同,参数个数不同,或者是参数类型的顺序不同。

  • 相关阅读:
    JavaScript的关键点
    博客开始
    CCF
    java-CCF+杂七杂八
    【软件工程】需求分析V2再整理
    汇编 书上实验
    组原2
    chrome主页被绑架
    【软件工程】乱的一遭
    【我希望我能鼓起勇气】汇编语言
  • 原文地址:https://www.cnblogs.com/xueqiuxiang/p/11580265.html
Copyright © 2011-2022 走看看