irbit2.c

来自「Numerical Recipes 是国际公认的高水平的、关于数值计算的书」· C语言 代码 · 共 24 行

C
24
字号
#define IB1 1
#define IB2 2
#define IB5 16
#define IB18 131072
#define MASK IB1+IB2+IB5

int irbit2(iseed)
unsigned long *iseed;
{
	if (*iseed & IB18) {
		*iseed=((*iseed ^ MASK) << 1) | IB1;
		return 1;
	} else {
		*iseed <<= 1;
		return 0;
	}
}

#undef MASK
#undef IB18
#undef IB5
#undef IB2
#undef IB1

⌨️ 快捷键说明

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