当前位置: 首页 > 编程笔记 >

程序在C ++中有效地将数字的位反转

师承弼
2023-03-14
本文向大家介绍程序在C ++中有效地将数字的位反转,包括了程序在C ++中有效地将数字的位反转的使用技巧和注意事项,需要的朋友参考一下

在本教程中,我们将讨论一个有效地反转数字位的程序。

为此,我们将给出一个非负数。我们的任务是将数字转换为二进制格式,将数字的二进制位反转。然后最后打印该数字的十进制等效值。

示例

#include <bits/stdc++.h>
using namespace std;
//倒数位
int invert_bit(int n){
   int x = log2(n) ;
   int m = 1 << x;
   m = m | m - 1;
   n = n ^ m;
   return n;
}
int main(){
   int n = 17;
   cout << invert_bit(n) << endl;
   return 0;
}

输出结果

14
 类似资料:
  • 实现 (Implementation) 现在,我们将看到该计划的实际执行情况 - #include <stdio.h> int main() { char s1[] = "TajMahal"; // String Given char s2[8]; // Variable to store reverse string int length =

  • 本文向大家介绍Java程序将数组反转到给定位置,包括了Java程序将数组反转到给定位置的使用技巧和注意事项,需要的朋友参考一下 数组可以反转到给定位置pos,其余数组不变。一个例子如下: 演示此的程序如下所示- 示例 输出结果 现在让我们了解上面的程序。 如果位置大于数组的长度,则这是一个错误并被打印。否则,首先打印原始数组。证明这一点的代码片段如下所示- 现在,使用for循环将数组反转到pos。

  • 我目前正在创建一个项目,检查给定的9x9数独表是否遵循数独规则。该表存储在一个多维数组中(board[9][9]),我一直在研究如何正确检查每个3x3子网格中是否有重复的数字。我已经建立了0(空白)和9(最大值)之外的数字检查,以及每行和每列中重复的检查。我已经管理了两个create 4 nested for循环,成功地循环了每个3x3框,但我不确定如何检查框中的值是否重复。我对重复的定义是两个包

  • 本文向大家介绍找出C ++中整数数组中位数的程序,包括了找出C ++中整数数组中位数的程序的使用技巧和注意事项,需要的朋友参考一下 假设我们必须实现一个名为MedianClass的类,其中包含以下方法- add(value) 这会为数据结构添加一个值。 median() 查找数据结构中当前存在的所有数字的中位数。 因此,如果我们加上5、3、8并找到中位数,则输出将为5.0,然后如果我们加上9并找到

  • 本文向大家介绍C#程序来匹配字符串中的所有数字,包括了C#程序来匹配字符串中的所有数字的使用技巧和注意事项,需要的朋友参考一下 要匹配字符串中的所有数字,请使用C#正则表达式。 首先,设置一个数字字符串- 使用以下正则表达式获取字符串中的数字- 以下是代码- 示例 输出结果

  • 如何将字符串转换为数组而不对每个元素使用?字符串只能包含字符0到9。