📄 lran2.h
字号:
/* lran2.h * by Wolfram Gloger 1996. * * A small, portable pseudo-random number generator. */#ifndef _LRAN2_H#define _LRAN2_H#define LRAN2_MAX 714025l /* constants for portable */#define IA 1366l /* random number generator */#define IC 150889l /* (see e.g. `Numerical Recipes') */struct lran2_st { long x, y, v[97];};static voidlran2_init(struct lran2_st* d, long seed){ long x; int j; x = (IC - seed) % LRAN2_MAX; if(x < 0) x = -x; for(j=0; j<97; j++) { x = (IA*x + IC) % LRAN2_MAX; d->v[j] = x; } d->x = (IA*x + IC) % LRAN2_MAX; d->y = d->x;}#ifdef __GNUC____inline__#endifstatic longlran2(struct lran2_st* d){ int j = (d->y % 97); d->y = d->v[j]; d->x = (IA*d->x + IC) % LRAN2_MAX; d->v[j] = d->x; return d->y;}#undef IA#undef IC#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -