21xrx.com
2024-09-19 09:25:09 Thursday
登录
文章检索 我的文章 写文章
C++实现二进制转十进制操作
2023-06-24 07:12:16 深夜i     --     --
C++ 二进制 十进制 操作 实现

二进制和十进制是计算机中常见的两种数制,其中二进制以0和1表示,而十进制是以0到9表示的数制,而要将二进制转化为十进制,可以使用C++中的算法来实现。

以下代码实现了二进制转十进制的操作:


#include <iostream>

#include <cmath>

using namespace std;

int binaryToDecimal(int binary)

  int decimal = 0, base = 1;

  while (binary > 0)

  {

    int lastDigit = binary % 10;

    binary = binary / 10;

    decimal += lastDigit * base;

    base *= 2;

  }

  return decimal;

}

int main()

{

  int binary = 10110;

  cout << binaryToDecimal(binary) << endl;

  return 0;

}

在这个代码块中,binaryToDecimal是一个函数,它接受一个二进制数作为参数,返回该数的十进制表示。在函数中,我们使用while循环遍历二进制数,从最后一位开始,将每个数字乘以2的幂次方,该幂次方是从0开始的2的递增幂。

在每个迭代中,我们将binary除以10并且取余数lastDigit,然后将binary除以10。将lastDigit乘以base,然后将它加到decimal中。最后,我们将base乘以2,下一次迭代中将使用这个新值。

在完成while循环之后,我们返回decimal,这就是二进制数的十进制表示。

在主函数中,我们定义了一个名称为binary的整数,并将其赋值为10110。我们调用binaryToDecimal函数,并将结果打印到控制台中,输出结果为22。

因此,我们使用了C++的算法,实现了二进制转十进制的操作。这个算法可以让程序员处理多种进制的数,无需进行复杂的手动转换。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复