你好,我是haskell的新手。
有谁能告诉我在haskell中从最后一个给定整数转换第k位吗?
当n = 37, k = 3时,输出应为killKthBit(n, k) = 33.
137 = 100 01 ~> 100 0 01 = 33。
您正在寻找Data.Bits
中的Bits
类型类。Integer有一个Bits
的实例,所以你可以:
clearBit 37 2 -- 2 because we are indexing from 0.