在C ++中打印数字的Kth最低有效位

在这个问题上,我们给了两个数字n和k。我们的任务是打印数字n的k最低有效位。

让我们以一个例子来了解问题

Input: n = 12 , k = 3

Output

1

Explanation:

Let’s see the binary representation of n: 12 = 1100

现在,第3个最低有效位是1。

为了解决这个问题,我们将使用数字的二进制位。并得出数字的第k位。为此,我们将使用数字的二进制移位,然后将数字左移(k-1)次。现在,对移位后的数字和原始数字进行结束操作,这将得出第k位的值。

示例

以下代码将显示我们解决方案的实现

#include <bits/stdc++.h>

using namespace std;

int main() {

   int N = 12, K = 3;

   cout<<K<<"th significant bit of "<<N<<" is : ";

   bool kthLSB = (N & (1 << (K-1)));

   cout<<kthLSB;

   return 0;

}

输出结果

3th significant bit of 12 is : 1

以上是 在C ++中打印数字的Kth最低有效位 的全部内容, 来源链接: utcz.com/z/331321.html

回到顶部