计算机自主随机字符串的抽取

时间:2021-07-30 17:46:13 日记 我要投稿

关于计算机自主随机字符串的抽取

  了解我的人,都知道,我是一个十分喜欢看电影的人,有的时候甚至一天看八部电影。但是这种到网页查找电影,找到自己喜欢的电影让后去看。这样的过程我认为日子长了,未免太没有意思。因此我有了一个新奇的想法:我将部分电影名全部放到计算机里,让计算机给我决定我应当看哪部电影。

  这个想法非常的新奇,因为突出点在于,并不是由我决定我因该看什么电影,而是由计算机决定。这增加了选择电影名称的有趣度,但也增加了是按这种情况的难度。

  显而易见,我的目的是让计算机随机抽取电影名,而不是为我推荐。这样的话,有了目的,我们需要的`材料以及必备的元素就已经有了,在目的里面说到关键词“计算机”“随机”“电影名”。不过好说的是,“电影名”这个东西并不难搞,百度一搜一大把,这是很好办到的事情,因此这个最先解决(谁叫他最简单)。让后就是解决“计算机”“随机”这两个东西了。非常明显的是,最简单的我们一眼就可以看出“计算机”,这就是我们需要的材料之一,只要有了它,才能完成我们的这次目的。我们准备好计算机,就要考虑下一个元素“随机”。

  不得不说“随机”,在我们人脑这里是一种方法,我们十分明白,随机就是从一堆东西中无规律的找出一个东西。然而,我们这种想法在计算机中也有一个独特的名字称号,他就是广为人知的“算法”。在当今计算机社会,对于程序的编写有了非常大的进步,我们这里使用C++,因为我熟悉,我拿手,就是这么任性。

  我们要养成不应当重复造轮子的好喜欢,因此,我们的前辈已经帮我们解决了“随机”这个问题,一个有趣的C++函数rand(),这既是我们要完成整个程序的重要函数,了解了这个函数就帮我们解决了问题。在这里,我们先不讨论这个函数里面到底是怎么运行的,要讨论这东西可大有学问。

  那么我们就来写一个十分简单的程序:

  #include

  #include

  #include

  #include

  using namespace std;

  int main()

  {

  int a,b,c,d;//这里我们假设有四部电影

  int e;//这里留着储备随即结果

  e=rand(a,b,c,d);

  cout 《 e;

  return 0;

  }

  完成

  既然我们的代码写完了,因为这是一个简单的代码,所以,可以找编译器测试一下。

  那么也会会问,什么叫做随机,有随机这个数吗?

  当然有,在大自然中,假设我们手中有一张硬纸,正面写着1,反面写着2,我们掏入空中,那么到底是正面还是反面呢?我们不知道,但我们知道这只是概率的问题,因此,随机这个名词,是统计学的一个名词。那么人能否给出一个真随机数呢?很抱歉,这是不可能的,因为人的大脑、心理决定了自身对于哪个数字的偏向。我们来思考极端一点的,假设你被别人盯上了,他在你的汽车中安置了一枚炸弹,连接着你的手机,你按了2这个按钮,你的汽车爆炸了,吓到了你,因此,你的潜意识会着重刻画这个事件以及里面的“2”。所以,人并不可能给一个随机的数字,因此才会有了民主投票选举法等等方式,人在力求公平。当然,人也可以间接的给出一个随机数,比如本自然段的开头。

  那么,计算机是否可以给出一个随机数呢?抱歉,也是不现实的。那么为什么,众所周知,计算机是一个逻辑机器,凡事都要依靠数学逻辑。因此我们动一动脚趾头就可以想出来。那么为什么还要在上文中称之为随机?不是没有随机吗?其实计算机关于随机的问题,在计算机之父“冯·诺伊曼”就已经意识到这个问题,他意识到这个单靠数学逻辑运算的庞然大物,并不能直接产生随机数,但他可以间接,比如我们上文说到的rand()函数,他是依靠数学公式递归出来的:Ni+1=(A* Ni + B)% M这是简化后的公式。人们发现,计算机可以间接的通过公式、二项式等等产生出来,也可以借助外部条件,比如无线的事实频率、CPU的实时频率、晶管分子震动次数等等,也可能够随时影响着计算机的随机数。但这些方法产生的数字,并不是纯粹的随机数,因此我们计算机科学管它叫做“伪随机数”。

【关于计算机自主随机字符串的抽取】相关文章:

随机应变的历史典故11-21

有趣的随机数命令说课稿11-04

随机应变造句11-27

公德心随机作文11-04

随机应变褒义词10-04

关于培养学生的自主学习能力10-11

用成语随机应变如何造句12-09

《随机事件》教学反思(通用5篇)12-23

随机应变造句4篇11-27

关于自主招生的自荐信范文01-29