小编Dou*_*owZ的帖子

如何测试数字是否为2的幂?

我想做一个简单的测试,以确定我正在制作的一位护卫员在Haskell中数字是否为2的幂。

目的是确定数字是否为偶数(而不是2的幂),数字是否为奇数或数字是否为2的幂。

我想做类似的事情:

function n
  | n `mod` 2 == 1 = 1
  | if n is to the power of 2 = 2
  | otherwise = 0
Run Code Online (Sandbox Code Playgroud)

我看过一些线程,但是它们都说要使用按位运算符:

(n & (n - 1)) == 0
Run Code Online (Sandbox Code Playgroud)

但是它说

不在范围内:“&”

当我尝试这样做时,因此不确定Haskell是否允许这样做。

haskell bitwise-operators

4
推荐指数
1
解决办法
163
查看次数

标签 统计

bitwise-operators ×1

haskell ×1