irbit1.for

来自「Numerical Recipes一书中例子的源码所用到的函数集,William」· FOR 代码 · 共 17 行

FOR
17
字号
      FUNCTION irbit1(iseed)
      INTEGER irbit1,iseed,IB1,IB2,IB5,IB18
      PARAMETER (IB1=1,IB2=2,IB5=16,IB18=131072)
      LOGICAL newbit
      newbit=iand(iseed,IB18).ne.0
      if(iand(iseed,IB5).ne.0)newbit=.not.newbit
      if(iand(iseed,IB2).ne.0)newbit=.not.newbit
      if(iand(iseed,IB1).ne.0)newbit=.not.newbit
      irbit1=0
      iseed=iand(ishft(iseed,1),not(IB1))
      if(newbit)then
        irbit1=1
        iseed=ior(iseed,IB1)
      endif
      return
      END

⌨️ 快捷键说明

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