20 Go 十进制数转其他进制

直接上代码演示:

十进制数转二进制数

 1 // 十进制123转成二进制
 2 str := `十进制123转成二进制
 3 十进制转二进制,即把十进制数m除以2,得到商和余数,记录下余数,
 4 用商继续除以2得到商和余数,如此循环直至商为0后,把所有的余数倒叙排列即为二进制数
 5 具体如下:
 6 十进制数123
 7 123/2=61,123%2=1
 8 61/2=30,61%2=1
 9 30/2=15,30%2=0
10 15/2=7,15%2=1
11 7/2=3,7%2=1
12 3/2=1,3%2=1
13 1/2=0,1%2=1
14 得到的二进制数为所有的取模数倒叙排列:
15 1111011`
16 num := 123
17 fmt.Println(str)
18 fmt.Printf("十进制数 %d,转换为二进制数 %b \n", num, num) // 十进制数 123,转换为二进制数 1111011

 

 

十进制数转八进制数

 1 // 十进制数678转成八进制数
 2 str = `十进制数678转成八进制数
 3 十进制转八进制,即把十进制数m除以8,得到商和余数,记录下余数,
 4 用商继续除以8得到商和余数,如此循环直至商为0后,把所有的余数倒叙排列即为八进制数
 5 具体如下:
 6 十进制数678
 7 678/8=84,678%8=6
 8 84/8=10,84%8=4
 9 10/8=1,10%8=2
10 1/8=0,1%8=1
11 得到的八进制数为所有的取模数倒叙排列:
12 1246`
13 num = 678
14 fmt.Println(str)
15 fmt.Printf("十进制数 %d,转换为八进制数 %o \n", num, num) // 十进制数 678,转换为八进制数 1246

 

 

十进制数转十六进制数

 1 // 十进制数8912转成十六进制数
 2 str = `十进制数8912转成十六进制数
 3 十进制转十六进制,即把十进制数m除以16,得到商和余数,记录下余数,
 4 用商继续除以16得到商和余数,如此循环直至商为0后,把所有的余数倒叙排列即为十六进制数
 5 具体如下:
 6 十进制数8912
 7 8912/16=557,8912%16=0
 8 557/16=34,557%16=13
 9 34/16=2,34%16=2
10 2/16=0,2%16=2
11 得到的十六进制数为所有的取模数倒叙排列:
12 22D0`
13 num = 8912
14 fmt.Println(str)
15 fmt.Printf("十进制数 %d,转换为十六进制数 %X \n", num, num) // 十进制数 8912,转换为十六进制数 22D0

 

posted @ 2022-06-01 23:25  风铃如沧海  阅读(154)  评论(0编辑  收藏  举报