c++2进制转化为10进制
时间: 2024-05-02 08:06:07 浏览: 20
将二进制数的每一位按权展开,权值为2的幂,从右向左分别为0、1、2…,然后将每一位上的数字与其对应的权值相乘,最后将这些乘积相加即可得到十进制数。
举个例子:将二进制数1101转化为十进制数。
1101的最右边一位是1,其权值为2^0=1,因此1*1=1;
1101的第二位是0,其权值为2^1=2,因此0*2=0;
1101的第三位是1,其权值为2^2=4,因此1*4=4;
1101的最高位是1,其权值为2^3=8,因此1*8=8。
将1、0、4、8相加得到13,因此1101的十进制表示为13。
相关问题
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即可。
c++ 二进制转化为十进制
以下是C++中将二进制转换为十进制的代码示例:
```c++
#include <iostream>
#include <cmath>
using namespace std;
int main() {
int n, decimal = 0, i = 0, remainder;
cout << "请输入一个二进制数:";
cin >> n;
while (n != 0) {
remainder = n % 10;
n /= 10;
decimal += remainder * pow(2, i);
++i;
}
cout << "转换为十进制为:" << decimal << endl;
return 0;
}
```
该程序首先要求用户输入一个二进制数,然后使用while循环将其转换为十进制数。在循环中,我们首先计算出当前二进制数的最后一位(即余数),然后将其从二进制数中删除。接下来,我们将余数乘以2的i次方,其中i是当前位数(从右往左数,从0开始)。最后,我们将所有乘积相加,得到十进制数。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)