Random.h中的代码:
#pragma once
class CRandom
{
public:
CRandom(VOID);
virtual ~CRandom(VOID);
public:
BOOL Init(UINT seed);
INT Rand(VOID);
INT SimpleRandom(VOID);
INT ComplexRandom(VOID);
private:
UINT mSeed;
};
Random.cpp中的代码:
#include "Random.h"
CRandom::CRandom( VOID )
{
}
CRandom::~CRandom( VOID )
{
}
//添加基本的整数
BOOL CRandom::Init( UINT seed )
{
mSeed = seed;
return TRUE;
}
//获取一般性的值
INT CRandom::Rand( VOID )
{
return (((mSeed = mSeed*214013L+2531011L)>>16)&0x7FFF);
}
//进行简单的运算,获取最小限度的Random值
INT CRandom::SimpleRandom( VOID )
{
return (((mSeed = mSeed+2531011L)>>3)&0x7FFF);
}
//通过复杂的运算公式获取Random值
INT CRandom::ComplexRandom( VOID )
{
UINT next = mSeed;
INT result;
next *= 1103515245;
next += 12345;
result = (UINT)(next/65536)%2048;
next *= 1103515245;
next +