C++——随机数算法

C++——随机数算法前言:在这里,我们要明确,计算机随机化出来的数字都是伪随机数字,就是近似于随机数,简单来说这个伪随机数需要依靠一个种子来决定这个数值的大小。默认情况下,这个种子的值是1。这造成了如果不改变种子的值,我们生成的随机数就会是同一个值。所以,我们就要设置种子C语言版本在C语言里,产生随机数主要用上两个函数,一个是srand(),另外一个是rand()函数。这个也没啥介绍的,具体看代码,就传递几个参数。rand()函数会返回一个范围在0到RAND_MAX(至少是32767,我的机器上是int的最大值)之间的

大家好,又见面了,我是你们的朋友全栈君。

前言:

在这里,我们要明确,计算机随机化出来的数字都是伪随机数字,就是近似于随机数,简单来说这个伪随机数需要依靠一个种子来决定这个数值的大小。默认情况下,这个种子的值是1。这造成了如果不改变种子的值,我们生成的随机数就会是同一个值。所以,我们就要设置种子

C语言版本

在C语言里,产生随机数主要用上两个函数,一个是srand(),另外一个是rand()函数。这个也没啥介绍的,具体看代码,就传递几个参数。
rand()函数会返回一个范围在0到RAND_MAX(至少是32767,我的机器上是int的最大值)之间的伪随机数(整数)。 RAND_MAX的大小可以查看,在include文件夹(linux在usr目录、windows在安装目录)的stdlib.h可以看到,linux下其值为2147483647(),其值与具体系统有关。

#include <iostream>
#include <cstdlib> // srand() 包含在这个库中
#include <ctime>//time() 包含在这个库中,

using namespace std;


int main()
{
  srand(unsigned(time(NULL)));
  // srand()括号当中就是种子的数值,默认情况是srand(1)
  int st = rand()%10;
  //通过取余的方式限制范围
  cout << st << endl;
  return 0;
}

随机输出10个数,如图:
在这里插入图片描述

C++版本

在另一篇文章里,请点击查阅!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/158936.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • nslookup命令解析域名_nslookup是什么意思

    nslookup命令解析域名_nslookup是什么意思1、作用:查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。2、命令解析命令格式:nslookupdomain[dns-server]示例:nslookupwww.163.com第一部分服务器:本机DNS服务器信息。192.168.3.1是我当前计算机的DNS服务器,由于是内网服务器名称无法获取第二部分非权威应答:Non-authoritativeanswer,除非实际存储DNSServer中获得域名解析回答的,都称为非权威应答。也就.

    2022年10月19日
    2
  • Pycharm 调试代码显示错误行_pycharm远程调试

    Pycharm 调试代码显示错误行_pycharm远程调试pycharm调试scrapy问题:Unknowncommand:crawl

    2025年6月22日
    2
  • 前端性能的优化_概括介绍

    前端性能的优化_概括介绍之前有整理过一部分知识点,一直没有发布,因为都是有关CSS方面的零散内容;现在想想无论做什么都需要慢慢积累,所以还是决定将之前整理的相关内容验证之后慢慢分享给你们,现在看到感觉还挺有意思。好了废话不多说,直接上代码以及图例(为了让大家方便阅读,都有自己验证过程的一些图片作为分享)。1.前端性能优化点:1.4个层面与8个点。1.4个层面:1.网络层面2.构建层面3.浏览器渲染层面4.服务端层面2.8个点:1.资源的合并与压缩。2

    2025年7月21日
    6
  • vs2010使用过程中的问题和解决、vs密钥[通俗易懂]

    vs2010使用过程中的问题和解决、vs密钥[通俗易懂]关于VS工具箱灰色,不可用的解决方案使用vs的命令行工具,在命令行中运行:devenv/ResetSkipPkgs,重新打开vs,重置一下工具箱,OK,成功了~!

    2022年5月3日
    49
  • wireshark安装问题「建议收藏」

    [root@lc~]#tsharkRunningasuser”root”andgroup”root”.Thiscouldbedangerous.Capturingoneth0tshark:Unknownmessagefromdumpcap,trytoshowitasastring:/usr/sbin/dumpcap:sy…

    2022年4月15日
    126
  • 如何重新初始化磁盘[通俗易懂]

    如何重新初始化磁盘[通俗易懂]

    2025年12月9日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号