irbit2.cpp

来自「C++数值算法原书代码」· C++ 代码 · 共 16 行

CPP
16
字号
#include "nr.h"

int NR::irbit2(unsigned long &iseed)
{
	const unsigned long IB1=1,IB2=2,IB5=16,IB18=131072;
	const unsigned long MASK=IB1+IB2+IB5;

	if (iseed & IB18) {
		iseed=((iseed ^ MASK) << 1) | IB1;
		return 1;
	} else {
		iseed <<= 1;
		return 0;
	}
}

⌨️ 快捷键说明

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