在 C++ 中打印数字的第 K 个最低有效位
在此问题中,我们给定两个数字 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
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP