C++ 函数及打印输出问题,请大神指导!

以下c++问题解决不了,请大神指导,请尽量详细注释和思路。谢谢!

1、写名为MyRealNothNo的函数,它不带任何参数,并在范围[1, 100 ]中返回一个随机整数。
2、编写一个C++主程序,在范围[1, 100 ]中重复地生成和打印随机整数。当连续打印值之间的差值的绝对值小于5时,程序必须停止。
在编写主程序时,必须使用部分(1)中定义的MyRealNo函数。在编写主程序时,必须提供所有必需的includes和命名空间。
如以下两个示例输出:
1。程序可以输出:76 43,77,94,54,41,45
2。程序可以输出:42 40

4个回答

 #include "time.h"
#include "stdlib.h"
#include <iostream>
using namespace std;

int MyRealNothNo()
{   
    return rand() % 100 + 1; //一个任意数,除以100取余数,肯定是[0,99],+1就是[1,99]
}

int _tmain(int argc, _TCHAR* argv[])
{
    srand((unsigned)time(NULL)); //初始化随机数种子
    int x = MyRealNothNo(), y;
    while (y = MyRealNothNo())
    {
        cout << x << " ";
        if (x - y < 5 && x - y > -5) break; //判断绝对值<5
        x = y;
    }
    cout << y << endl;
    return 0;
}

图片说明

不同意下面这种传统的随机数生成方式

srand((unsigned)time(NULL)); //初始化随机数种子 

他的局限是time(NULL) 受系统时间以秒为单位,当计算比较快的时候种子一样,可能会导致生成的随机数为同一数值。
因此建议采用记时精度更高的作为种子数,比如CPU的tick计数

luck_xyz
luck_xyz 种子只初始化了一次何来"当计算比较快的时候种子一样"之说?
大约一年之前 回复
caozhy
贵阳老马马善福专门编写代码的老马就是我! 然而你知道的这些我能不知道么?可是为什么我的程序并没有出现“重复”,是我的计算机不够快?所以建议你好好研读下我的代码。
大约一年之前 回复

@caozhy 朋友,我想说的并不是这个问题,我将这种代码的潜在风险模拟出来,你可以看下处理结果!

#include "time.h"
#include "stdlib.h"
#include <iostream>
using namespace std;

int MyRealNothNo()
{
    return rand() % 100 + 1; //一个任意数,除以100取余数,肯定是[0,99],+1就是[1,99]
}

void yours()
{
    srand((unsigned)time(NULL)); //初始化随机数种子
    int x = MyRealNothNo(), y;
    while (y = MyRealNothNo())
    {
        cout << x << " ";
        if (x - y < 5 && x - y > -5) break; //判断绝对值<5
        x = y;
    }
    cout << y << endl;

    return;
}

int _tmain(int argc, _TCHAR* argv[])
{
    for (int i = 0; i < 100; i++)
        yours();

    return 0;
}

图片说明

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
C++ 函数及打印输出问题,请大神指导!
以下c++问题解决不了,请大神指导,请尽量详细注释和思路。谢谢!nn1、写名为MyRealNothNo的函数,它不带任何参数,并在范围[1, 100 ]中返回一个随机整数。n2、编写一个C++主程序,在范围[1, 100 ]中重复地生成和打印随机整数。当连续打印值之间的差值的绝对值小于5时,程序必须停止。n在编写主程序时,必须使用部分(1)中定义的MyRealNo函数。在编写主程序时,必须提供所有必需的includes和命名空间。n如以下两个示例输出:n1。程序可以输出:76 43,77,94,54,41,45n2。程序可以输出:42 40n
C函数及使用例子
函数及变量作用域问题
var part = "global";rn function checkvariable()rnrn document.write(part);rn document.write("sf"); rnrn checkvariable(); //输出globalrnrn var part = "globa";rnfunction checkvariable()rn rn alert(part);rn var part = "local";rn document.write(part);rnrncheckvariable();rn为什么输出是两次 undefined和local。恳求详细解释一下
parse_ini_file函数及问题
原文链接:parse_ini_file() 函数及问题 parse_ini_file(file,process_sections)   filename 要解析的 ini 文件的文件名。 process_sections 如果将最后的 process_sections 参数设为 TRUE,将得到一个多维数组,包括了配置文件中每一节的名称和设置。proces...
C++函数打印输出问题,请大神帮忙
c++遇到以下技术问题,解决不了。注释请尽量详细。谢谢!n写一个名为PrtPyDigixSth的C++函数,将一个整数和打印输出的数字向后打印。假设参数总是非负的。如下表三个函数调用及其对应的输出。n![图片说明](https://img-ask.csdn.net/upload/201807/02/1530539714_110178.png)
Js的函数及作用域问题
input type="button" id="btn" value="a"/> scripttype="text/javascript">   函数的基本格式       function  函数名(参数列表){ 函数体 returu  返回值; }      函数的第一种类型:无参数无返回值   当函数无返回值的时候,return可以不写
4.lseek函数及共享文件
4.1.lseek函数介绍 4.1.lseek函数介绍 4.3.重复打开同一文件读取 4.4.重复打开同一文件写入 4.5.O_APPEND实现原理及原子操作性说明 4.6.文件共享及实现方式 4.7.再论文件描述符
Matlab的函数及指令
关于matlab的重要函数和指令 重要函数的解释 指令的解释
函数及函数指针
1、匿名函数及函数变量的使用 package main import &quot;fmt&quot; func main() { f:= func(n int) error { //匿名函数及函数指针定义 fmt.Println(n) return nil } f(1) //指针函数变量调用函数 } //print 1 2、通过map存放函数指针,及调用 package ma...
JavaScript函数及隐式转换
JavaScript函数 概念与Java中方法类似,也是将一些代码进行封装,之后再需要的地方直接使用函数的名称进行调用,解决了重复代码的问题 js中函数的声明 使用function进行声明 声明的时候没有定义返回值 参数没有指定类型,直接给出参数名称 返回值根据需求,可有可无 function 函数名(参数1,参数2...){ //js代码 [return 返回的数据] } eg: fu...
Scala函数及函数式编程
Scala函数及函数式编程 函数声明 函数相当于Java中的静态方法:除了递归之外不需要声明返回类型   [java] view plaincopyprint?   def as(x:Double)={if(x&amp;gt;=0) x else -x}   def fac(n:Int):Int={if(n&amp;lt;=0) 1 else fac(n-1)}...
EEOF函数及测试程序
做eeof的程序代码,里面附带程序个代码,在matlab里面运行即可
javascript函数及说明
里面是大家常用的javascript函数,方便大家查询用的
epoll函数及原理
epoll是Linux内核为处理大批量文件描述符而作了改进的epoll,是Linux下多路复用IO接口select/poll的增强版本,它能显著提高程序在大量并发连接中只有少量活跃的情况下的系统CPU利用率。另一点原因就是获取事件的时候,它无须遍历整个被侦听的描述符集,只要遍历那些被内核IO事件异步唤醒而加入Ready队列的描述符集合就行了。epoll除了提供select/poll那种IO事件的水平
08_函数及参数
本课程深入浅出地剖析和分解了PHP企业级开发项目在实际工作中的应用,每个过程给大家详细讲解。<br />rn<br />
摇杆函数及资源
常用的摇杆函数和其使用的图片资源,具体使用参看博客 http://blog.csdn.net/sharkmarine
C语言函数及相关知识
主要是一些C语言基础知识,对初学者很有帮助
c语言函数及相关知识
使用前请您先阅读以下条款: 1、学生大软件站对原软件包“依样”打包,增加此说明文件,不保证所提供软件或程序的完整性和安全性。 2、请在使用前查毒 (这也是您使用其它网络资源所必须注意的) 。 3、在安装时,务必留意查看每一步的Next!以免被安装第三方恶意插件程序。 4、由本站提供的程序对您的网站或计算机造成严重后果的本站概不负责。 5、欢迎再次到学生大软件站(soft.studa.com)下载您所需要的软件。 6、未经本站明确许可,任何网站不得非法盗链及抄袭本站资源!
C语言常用库函数及说明
C常用库函数,函数名,函数类型和形参类型,功能,返回值等说明
c语言图形函数及实例
详细介绍了c语言图形函数并给出了具体实例实例
matlab函数及命令
按首字母顺序排列,列出所有基本函数及功能,很实用
狄拉克函数及性质
详细介绍了狄拉克函数及性质,是一个比较好的学习资料
函数及函数式编程
一、函数   函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。 1、定义函数 def function(): # 无参数,无返回值,也不执行任何动作。 pass # pass一般用作占用符,保持语...
WinIo函数及使用说明
WinIo常用库函数 参数名称 函数用法 非常详尽
fork()函数及例题
一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。 一个进程调用fork()函数后,系统先给新的进程分配资源,例如存储数据和代码的空间。然后把原来的进程的所有值都复制到新的新进程中,只有少数值与原来的进程的值不同。相当于克隆了一个自己。 #include <stdio.h> #include <unistd.h> #include <sys/types.h> #incl
Uchome函数及注释
Uchome函数及注释 Uchome函数及注释
Matlab 的函数及指令
Matlab的函数及指令,欢迎大家来下,哈哈,~~~`````````````
定义函数及测试
下面的代码是帮朋友写的。我一直在弄C#方面的开发。对C忘记得差不多了。而且我也没有Turbo C的测试平台。rn哪位大哥帮忙测试一下。也不知道是不是这样写。rn题目要求:写一个函数计算任意一个整数N的各位数字之和,并写一函数来测试其功能。rn自编代码:rnint SumDig(it)rnint it;rnrn char *str[20];rn int tmp=0;rn for(int i=0;ic)&&((a+c)>b)&&((b+c)>a))rn printf("The Three Number is True.");rn elsern printf("The Three Number is False.");rnrn------------------------------------------------------------rn呵呵,各位大哥,帮忙看看。
C++main函数及参数
转载自:https://www.cnblogs.com/carsonzhu/p/5276317.html C++ main()函数及其参数 1、首先,想想C/C++在main函数之前和之后会做些什么? 我们看看底层的汇编代码: __start:      :      init stack;      init heap;      open stdin;      open stdou...
重要函数及类型
1. 变量类型 void * pid_t pthread_t pthread_mutex_t sem_t key_t ipcs -a , -q, -s, -m msqid_ds 2. 函数 fork()返回值为0子进程,不为0为父进程 getpid() pthread_create(phread_t *restrict thread.......)...
Python语法—函数及参数传递
Python语法—函数及参数传递 函数 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。 定义一个函数 你可以定义一个由自己想要功能的函数,以下是简单的规则: 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号(...
函数及视图
本课程以几年前给客户做的一套合同化验物流管理系统为主线,从ASP.NET基础开发环境搭建到C#基础一直到中间各ADO.NET各知识点、后端数据库之存储过程及各导航和用户权限进行了详细讲解,课程各知识点的解读配合真实客户源码讲解,使学员更容易接受,从而大大节约学员的学习时间成本
Linux C语言函数及编程指南
对Linux下的C库函数有详细的介绍,对初学者有很大的帮助,对使用Linux编程的用户是很好的学习资源!
C图形编程函数及用法大全
用于纯C图形编程,是我从网上搜集过来的,对于C新手很有用
c中绝对值函数及用法?
C语言相关函数及sed命令
1.memset()函数原型是extern void *memset(void *buffer, int c, int count)                          buffer:为指针或是数组,                   c:是赋给buffer的值,                   count:是buffer的长度.        这个函数在socket中多...
Mathematica函数及使用方法
Mathematica函数及使用方法,此文档为PDF格式,介绍了Mathematica中所有函数的使用方法。是一个不可多得的参考资料。
LGBM函数及参数详解
LGBM Python API Dataset class lightgbm.Dataset(data, label=None, max_bin=None, reference=None, weight=None, group=None, init_score=None, silent=False, feature_name='auto', categorical_feature='auto'...
C#-函数及方法
基本定义一、构造函数构造函数又称为构造方法,是对类的初始化,构造方法与类同名,无返回值,不需要void,在new时调用。特别的一个类可以有多个构造函数,可根据其参数个数的不同或参数类型的不同来区分他们,即构造函数的重载二、重写当一个子类继承一个父类,为子类中的方法与父类中的方法的名称,参数个数,类型都完全一致时,就称这个方法重写了父类中的方法。三、重载一个类中的方法和另一个方法同名,但是参数表不同...
常用库函数及头文件
1.排序  sort(a,b,c)          头文件:#include &amp;lt;algorithm&amp;gt; 2.字符串与整实型转换   一、string转int a(int变量)=atoi(b(string变量).c_str())               头文件:#include &amp;lt;cstdlib&amp;gt;      二、string转float a(float变量)=...
相关热词 c# 去空格去转义符 c#用户登录窗体代码 c# 流 c# linux 可视化 c# mvc 返回图片 c# 像素空间 c# 日期 最后一天 c#字典序排序 c# 截屏取色 c#中的哪些属于托管机制