int littleRand(int min, int max)
{
//考虑到不同平台下RAND_MAX可能不等于0x7fff,所以不能把RAND_MAX*RAND_MAX,以免int爆掉
if (min > max)
{
min = max;
}
int randV = rand() % (max - min + 1);
int randResult = min + randV;
return randResult;
}
int bigRand(int min, int max)
{
//考虑到不同平台下RAND_MAX可能不等于0x7fff,所以不能把RAND_MAX*RAND_MAX,以免int爆掉
if (min > max)
{
min = max;
}
int rand1 = rand() % 10000;
int rand2 = rand() % 10000;
int randV = (rand1 * rand2) % (max - min + 1);
int randResult = min + randV;
return randResult;
}
int main()
{
srand(time(0));
std::map<int, int> a;
std::map<int, int> b;
for (int i = 0; i < 1000000; i ++)
{
a[bigRand(1, 10)]++;
b[littleRand(1, 10)]++;
}
for (int i = 1; i <= 10; ++ i)
{
cout << i <<": \t"<< a[i] << " \t " << b[i] << endl;
}
return 0;
}
std::map<int, int> r;
for(int i = 0; i < 10; ++i)
{
for (int j = 0; j < 10; ++j) {
r[i * j ]++;
}
}
for (int i = 0 ; i < 10; ++i) {
cout << i <<"\t"<< r[i] << endl;
}
0 27 1 4 2 12 3 4 4 12 5 9 6 12 7 4 8 12 9 4
int bigRand(int min, int max)
{
if (min > max)
{
min = max;
}
int rand1 = rand() % 10000;
int rand2 = rand() % 10000;
int randV = (rand1 * 10000 + rand2) % (max - min + 1);//改成这样
int randResult = min + randV;
return randResult;
}
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
unsigned long ulrand(void) {
return (
(((unsigned long)rand()<<24)&0xFF000000ul)
|(((unsigned long)rand()<<12)&0x00FFF000ul)
|(((unsigned long)rand() )&0x00000FFFul));
}
int i;
unsigned long ul;
void main() {
srand(time(NULL));
for (i=0;i<10;i++) {
ul=ulrand();
printf("0lu 0xx\n",ul,ul);
}
}
int BigRand()
{
return RAND_MAX*rand() + rand();
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有