random.h

来自「基于VC++的turbo码MAP译码算法」· C头文件 代码 · 共 45 行

H
45
字号
#include <cstdlib>
#include <cstdio>
#include <cmath>
#include <ctime>
#include <climits>
#include <cfloat>

#ifndef RANDOM_H
#define RANDOM_H

#define IM1 2147483563
#define IM2 2147483399
#define AM (1.0/IM1)
#define IMM1 (IM1-1)
#define IA1 40014
#define IA2 40692
#define IQ1 53668
#define IQ2 52774
#define IR1 12211
#define IR2 3791
#define NTAB 32
#define NDIV (1+IMM1/NTAB)
#define EPS DBL_MAX
#define RNMX (1.0-EPS)

// a uniform random number generator between zero and 1.
class Random
{
	long idum2;
    long idum;
	long iy;
	long iv[NTAB];
    unsigned memory;
   	void init(long seed);
   	double ran2();
public:
	Random(long seed);
    Random();
	double doublerandom();
    long longrandom(long range);
    bool boolrandom();
};
#endif  // RANDOM_H

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?