二进制转十进制的算法是:将二进制数的每一位与 2 的对应次幂相乘,然后将这些乘积相加。
例如:二进制数1011转十进制,则:
(12^3) + (02^2) + (12^1) + (12^0) = 8 + 0 + 2 + 1 = 11
因此,1011(二进制) = 11(十进制)。下面给出各个主流编程语言的二进制转十进制算法代码范例。
1、Python二进制转十进制的算法代码:
在 Python 中,可以使用 int() 函数将二进制字符串转换为十进制整数:
binary_num = “1011”
decimal_num = int(binary_num, 2)
print(decimal_num) # 11
也可以使用以下方法:
binary_num = “1011”
decimal_num = 0
binary_num = binary_num[::-1]
for i in range(len(binary_num)):
decimal_num += int(binary_num[i])*(2**i)
print(decimal_num) # 11
2、C语言二进制转十进制的算法代码:
在 C 语言中,可以使用 strtol() 函数将二进制字符串转换为十进制整数:
#include <stdio.h>
#include <stdlib.h>
int main() {
char binary_num[] = “1011”;
int decimal_num;
decimal_num = strtol(binary_num, NULL, 2);
printf(“%d\n”, decimal_num); // 11
return 0;
}
3、C++语言二进制转十进制的算法代码:
在 C++ 中,可以使用 stoi() 函数将二进制字符串转换为十进制整数:
#include <iostream>
int main() {
std::string binary_num = “1011”;
int decimal_num;
decimal_num = std::stoi(binary_num, 0, 2);
std::cout << decimal_num << std::endl; // 11
return 0;
}
4、Java二进制转十进制的算法代码:
在 Java 中,可以使用 Integer.parseInt() 函数将二进制字符串转换为十进制整数:
String binary_num = “1011”;
int decimal_num;
decimal_num = Integer.parseInt(binary_num, 2);
System.out.println(decimal_num); // 11
算法爱好者也可以自己写,代码如下:
String binary_num = “1011”;
int decimal_num = 0, i = 0, rem, base = 1;
int len = binary_num.length();
for (i = len – 1; i >= 0; i–) {
rem = binary_num.charAt(i) – ‘0’;
decimal_num += rem * base;
base = base * 2;
}
System.out.println(decimal_num); // 11
5、C#二进制转十进制的算法代码:
在 C# 中,可以使用 Convert.ToInt32() 函数将二进制字符串转换为十进制整数:
string binary_num = “1011”;
int decimal_num;
decimal_num = Convert.ToInt32(binary_num, 2);
Console.WriteLine(decimal_num); // 11
6、Visual Basic二进制转十进制的算法代码:
在 Visual Basic 中,代码如下,当然,你也可以用 Convert.ToInt32() 函数
Dim binary_num As String = “1011”
Dim decimal_num As Integer = 0, i As Integer = 0, rem As Integer, base As Integer = 1
Dim len As Integer = binary_num.Length
For i = len – 1 To 0 Step -1
rem = binary_num(i) – “0”c
decimal_num += rem * base
base = base * 2
Next
Console.WriteLine(decimal_num) ‘ 11
7、JavaScript二进制转十进制的算法代码:
在 JavaScript 中,可以使用 parseInt() 函数将二进制字符串转换为十进制整数:
let binary_num = “1011”;
let decimal_num;
decimal_num = parseInt(binary_num, 2);
console.log(decimal_num); // 11
8、PHP二进制转十进制的算法代码:
在 PHP 中,可以使用 bindec() 函数将二进制字符串转换为十进制整数:
$binary_num = “1011”;
$decimal_num = bindec($binary_num);
echo $decimal_num; // 11
或者:
$binary_num = “1011”;
$decimal_num = 0;
$i = 0;
$len = strlen($binary_num);
for ($i = $len – 1; $i >= 0; $i–) {
$rem = $binary_num[$i];
$decimal_num += $rem * pow(2, $len – $i – 1);
}
echo $decimal_num; // 11
9、SQL语言二进制转十进制的算法代码:
在 SQL 中,可以使用 CAST 或 CONVERT 函数将二进制字符串转换为十进制整数。
例如,使用 CAST 函数:SELECT CAST(1011 AS UNSIGNED) AS decimal_num;
使用 CONVERT 函数:SELECT CONVERT(UNSIGNED, 1011) AS decimal_num;
注意:这里的 1011 是二进制字符串,在使用 CAST 或 CONVERT 函数时需要将其转换为 UNSIGNED 类型。
需要注意的是,这只是在单纯的查询数据库中存储的二进制字符串的情况下这样使用,如果你需要在sql中进行运算或者处理,可能需要使用其他的函数或者语句来实现,可能需要具体情况具体分析。
以上语言排名不分先后,如果有不在里面的其它编程语言,以此类推即可。
★关于WorkWin公司电脑监控软件★
WorkWin的使命是打造Work用途的Windows 电脑系统,有效规范员工上网行为,让老板知道员工每天在做什么(监控包括屏幕、上网在内的一举一动),限制员工不能做什么(禁止网购、游戏、优盘等)。
WorkWin基于纯软件设计,非常容易使用,无需添加或改动任何硬件,使用一台管理机监控全部员工机电脑。历经南京网亚十余年精心打造,此时此刻每天都有成千上万企业电脑正在运行WorkWin,选择WorkWin选择“赢”。
版权所有,南京网亚计算机有限公司 。本文链接地址: 二进制转十进制算法各编程语言代码大全,值得收藏