正文
java02动手动脑
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
1 编写一个方法,生成一千个随机数,用ppt提供的纯随机数发生器。
做这个题目时,看到老师已经给出Xn+1=(aXn+c) mod Integer.MAX_VALUE;给出了公式自然就算法明了。
我想到了用一个函数的返回值再次作为这个函数的参数,进行一个嵌套的使用,这时候只需要找到X0就成功了,通过翻阅ppt和在网上查询相关资料确定了种子seed,也就是X0的初值。
seed=seed = System.currentTimeMillis();就是确定X0的相关语句,最后在主函数中写一个for循环,嵌套函数使用就完成了。
具体代码如下:
1 package java课堂;
2 /*20173442 田昕可 信1705-3*/
3 public class Java02 {
4
5 public static long func(long n)
6 {
7 long number=(16807 * n) % Integer.MAX_VALUE;
8 return number;
9 }
10
11 public static void main(String[] args) {
12 // TODO 自动生成的方法存根
13 long seed = System.currentTimeMillis();//种子
14 int i;
15 int count=0;
16 long random=func(seed);//X0
17 for(i=1;i<=1000;i++)
18 {
19 random=func(random);
20 System.out.print(random+" ");
21 count++;
22 if(count%5==0)
23 System.out.print("\n");//为了整洁,每五个随机数换一行
24 }
25 }
26
27 }
2.查看一下jdk中的System.out.println()方法,你发现了什么
在平时的写代码过程中,我最习惯用println()方法,因为它十分的方便,不管参数是字符串还是数字还是字符,都能够自动识别并且打印出来。
System.out.println()运用了函数重载的方法,是参数不同,函数名相同的函数重载的标准案例,根据用户所给的参数的不同,自动调用不用的函数来实现功能,
避免了函数名过多的麻烦,直接运用即可。