鼻子起痘痘是什么原因:random(n)产生0~n的随机数(n为word类型,先执行randomize, 才能得到随机整数);是什么意思,举个例子^^^

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 19:49:28
pascal!!!!!!!!!!!!!!

是这样的,计算机中所有的随机数都是通过某些方法计算出来的,也就是所谓的伪随机数。
random(n)就是通过对种子数进行一系列的复杂运算得到随机数。
如果不先执行randomize,那么pascal就会使用默认的种子数来生成随机数。
在这种情况下,每一次运行程序生成的随机数都是一样的,也就是说,我第一次运行得到的随机数列是2,5,4,3的话,下一次还是按这个顺序得到随机数。
你可以自己写一下看看每次得到的是不是都一样。
这样,就需要randomize了,他会根据系统时间来设定种子数,就能保证每次得到的随机数都是不同的了。

randomize的功能是激活随机种子,保证每次运行随机函数得的数值都不相同
不过只在TC一有这个,在VC下就没这个了,你用到另一个函数了
下面给你一个VC使用随机函数的例子:
#include <windows.h>
#include <stdlib.h>
#include <stdio.h>
#include <time.h>

void main()
{int i;
srand((unsigned)time(NULL));

/* Display 10 numbers. */
for( i = 0; i < 10;i++ )
printf( " %6d\n", rand()%6 );
}