二进制转化为十进制c++代码
时间: 2023-11-04 08:05:29 浏览: 65
好的,以下是将二进制转化为十进制的C++代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
string binary;
cout << "请输入一个二进制数:";
cin >> binary;
int decimal = 0;
for (int i = 0; i < binary.length(); i++) {
decimal += (binary[i] - '0') * pow(2, binary.length() - i - 1);
}
cout << "转化为十进制后为:" << decimal << endl;
return 0;
}
```
相关问题
二进制转化为十进制c++ 代码
将二进制转化为十进制可以使用以下代码:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
string binary;
cout << "请输入一个二进制数:";
cin >> binary;
int decimal = 0;
for (int i = 0; i < binary.length(); i++) {
decimal += (binary[i] - '0') * pow(2, binary.length() - i - 1);
}
cout << "转化为十进制为:" << decimal << endl;
return 0;
}
```
该代码首先读入一个二进制数,然后使用循环和幂函数将其转化为十进制数,并输出结果。
--相关问题--:
1. 如何将十进制转化为二进制?
2. 如何将十进制转化为八进制或十六进制?
c++二进制转化为十进制代码
以下是C++中二进制转化为十进制的代码:
```
#include <iostream>
#include <cmath>
#include <string>
using namespace std;
int main() {
string n; // 定义字符串n
int sum = 0; // 定义转化为十进制的数字为sum
cout << "请输入二进制数字:";
cin >> n; for(int i = 0; i < n.size(); i++) {
// 边界条件判断
if(n[i] > '1') {
cout << "非法输入";
return 0; // 直接退出
}
// 判断当前字符串n[i]是否为1,因为不是1就是0,为0的话,0的2次方还是等于0,不需要加法运算。
if(n[i] == '1') {
int j = pow(2, n.size() - i - 1); // 这里考虑好二进制转化成十进制公式里面i和次方的关系
sum += j;
}
}
cout << sum << endl;
return 0;
}
```
该代码使用了字符串来存储二进制数字,然后通过循环遍历字符串中的每一位,判断是否为1,如果是1,则根据公式计算出对应的十进制数并加到sum中。最后输出sum即可。