2024年6月12日发(作者:)
计算机rand是什么意思
rand是计算机中用于运行的基本数据结构。具体定义请参考百
度百科“ rand”。 rand是个什么东西,为什么要用它来定义一种计
算方式?这些问题要从计算机数学讲起。首先解释一下什么是计算机
数学。计算机中所有能用数字表示的函数都可以被称为数学函数。如,
计算阶乘、幂次、开平方等。我们通常所说的“加减乘除”这四则运
算就属于计算机的数学函数。我们通常把函数的结果称为值。其实,
在计算机科学中,值可以由两部分组成:一部分叫做数值(也就是数),
另一部分叫做对应数值的“值域”。所谓数值就是对应于某个输入,
可得到某个输出的数值。而对应数值的“值域”则是一个集合,它是
由一系列真实的数值点构成。
在指定的空间内,能够以“数值”的形式表达的东西总共只有7
个,所以所有能用数值表达的函数和对应的值域都是可以用7个基本
数据类型来定义的。于是我在脑海里搜索了一遍7个基本数据类型,
忽然发现rand竟然是所有数据类型中的最后一个!我感觉不可思议,
但是事实摆在眼前。还记得以前学过的数论吗?比如我们学过的
1+2+3+4+5=15。
于是我对他说:“你的答案也许有错误,但是我需要一个参考答
案,我想查找一下最大的基本数据类型是什么。”当我尝试去用一个
对应的值的时候,我惊讶地发现,它竟然就是rand!可是我已经记
不清原来的数值是多少了,于是我把这个问题发给了老师。老师告诉
我,根据定义, rand的值域是[-1,1],它的数值是-1。在我这个二
- 1 -
年级的小学生看来,这并没有什么稀奇的,因为在我刚接触计算机的
时候,也曾经使用过这个数值来作为函数的数值。但是当我上了高年
级之后,我终于明白了为什么计算机中要选择用rand这个数值来作
为我们表达数的“值域”了。因为他既包含有数,又能表达其对应的
值域。我是这样理解rand的:他象征着一个随机的变量。他会被存
储在计算机的存储器中,但是他的值域却是未知的。我们可以把这个
未知的数值当作0或1,而且我们可以随意地改变它。因此我认为,
在计算机中我们要设置一个固定的数值,这个数值在我们程序运行之
前是不能更改的,否则我们的程序就会陷入死循环。
看着这个小孩子一脸天真地举着“优秀”的红旗,我忽然感到十
分欣慰。因为在这个孩子身上,我看到了我自己童年的影子。
- 2 -


发布评论