21xrx.com
2024-11-22 09:29:09 Friday
登录
文章检索 我的文章 写文章
"C++进制转换代码:十进制与二进制互相转换"
2023-06-24 00:31:47 深夜i     --     --
C++ 进制转换 十进制 二进制

C++进制转换代码:十进制与二进制互相转换

在计算机科学中,不同进制的转换是经常会遇到的问题。特别是在程序设计中,将十进制数转换为二进制数或将二进制数转换为十进制数是非常常见的操作。在C++语言中,我们可以使用一些简单的代码来实现这些进制转换。本文将介绍如何使用C++代码实现十进制与二进制互相转换。

1. 十进制转二进制

将十进制数转换为二进制数,需要用到除2取余的方法。我们可以从该数的二进制数中最右边的位开始,逐位确定它是0还是1,并不断地除以2,最后得到二进制数。下面是一个C++函数,可以将一个十进制数转换为二进制数:


#include <iostream>

#include <string>

using namespace std;

string decimalToBinary(int num){

  string binary = "";

  while(num > 0){

    binary = to_string(num%2) + binary;

    num = num/2;

  }

  return binary;

}

int main(){

  int decimal = 10;

  string binary = decimalToBinary(decimal);

  cout << "The decimal " << decimal << " in binary is " << binary << endl;

  return 0;

}

上面的函数将一个整数作为输入,然后返回一个字符串类型的二进制数。在上面的示例中,我们将一个十进制数10转换为二进制数,最终输出结果为"1010"。

2. 二进制转十进制

将二进制数转换为十进制数,需要用到幂的方法。我们可以从该二进制数的最右边的位开始,逐位乘以2的幂次方,并将所有结果相加,最后得到十进制数。下面是一个C++函数,可以将一个二进制数转换为十进制数:


#include <iostream>

#include <string>

using namespace std;

int binaryToDecimal(string binary){

  int decimal = 0;

  for(int i=0; i<binary.length(); i++){

    decimal += (binary[i]-'0')*pow(2, binary.length()-i-1);

  }

  return decimal;

}

int main(){

  string binary = "1010";

  int decimal = binaryToDecimal(binary);

  cout << "The binary " << binary << " in decimal is " << decimal << endl;

  return 0;

}

上面的函数将一个字符串类型的二进制数作为输入,然后返回一个整数类型的十进制数。在上面的示例中,我们将一个二进制数"1010"转换为十进制数,最终输出结果为10。

总结:

本文介绍了C++代码来将十进制数转换为二进制数或将二进制数转换为十进制数的方法。这些技术可用于程序设计中的任何领域,包括算法和编程等。无论您是公共课程的学生还是程序设计员,掌握这些技能都将有益。

  
  

评论区

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