编写 Go 语言程序将二进制数转换为十进制数
示例
- 输入 binary_num = 1010111 => 十进制数 = 64+0+16+4+2+1 = 87
- 输入 binary_num = 10101 => 十进制数 = 21
解决此问题的方案
- 步骤 1:定义一个函数,该函数接受一个二进制数 binary_num,声明 decimalNum = 0,index = 0
- 步骤 2:开始循环,直到 binary_num 变成 0。
- 步骤 3:求出 binary_num 的余数并除以 10。
- 步骤 4:使用 decimalNum 和 remainder*pow(2, index) 计算十进制数。
- 步骤 5:返回 decimalNum。
程序
package main
import (
"fmt"
"math"
)
func binaryToDecimal(num int) int {
var remainder int
index := 0
decimalNum := 0
for num != 0{
remainder = num % 10
num = num / 10
decimalNum = decimalNum + remainder * int(math.Pow(2, float64(index)))
index++
}
return decimalNum
}
func main(){
fmt.Println(binaryToDecimal(1))
fmt.Println(binaryToDecimal(10))
fmt.Println(binaryToDecimal(101))
fmt.Println(binaryToDecimal(101011))
}输出
1 2 5 43
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言
C++
C#
MongoDB
MySQL
Javascript
PHP