編寫一個 Go 語言程式將十進位制數轉換為其二進位制形式


示例

  • 輸入 decimal_num = 13 => 輸出 = 8+4+1 => 1101
  • 輸入 decimal_num = 11 => 輸出 = 8+2+1 => 1011

解決該問題的思路

  • 步驟 1:定義一個接收十進位制數(型別為 int)的函式,decimal_num
  • 步驟 2:定義一個數組,用於在將十進位制數除以 2 時儲存餘數。
  • 步驟 3:啟動一個 for 迴圈,直到十進位制數變為 0。
  • 步驟 4:以逆序列印二進位制陣列。

程式

線上演示

package main
import (
   "fmt"
)

func decimalToBinary(num int){
   var binary []int

   for num !=0 {
      binary = append(binary, num%2)
      num = num / 2
   }
   if len(binary)==0{
      fmt.Printf("%d\n", 0)
   } else {
      for i:=len(binary)-1; i>=0; i--{
         fmt.Printf("%d", binary[i])
      }
      fmt.Println()
   }
}

func main() {
   decimalToBinary(87)
   decimalToBinary(10)
   decimalToBinary(31)
   decimalToBinary(0)
}

輸出

1010111
1010
11111
0

更新時間:04-2-2021

2 千次瀏覽

開啟您的 職業

完成課程取得認證

開始學習
廣告
© . All rights reserved.