使用遞迴將十進位制數轉換為二進位制的 Swift 程式
本教程將討論如何編寫 Swift 程式,使用遞迴將十進位制數轉換為二進位制。
十進位制數是指基值為 10 的數字。十進位制數也稱為基數 10 數字系統,包含 10 個數字:0、1、2、3、4、5、6、7、8、9。在這裡,十進位制數中每個數字的位置的權重是 10 的冪。
二進位制數是指基值為 2 的數字。二進位制數也稱為基數 16 數字系統,僅包含兩個數字 1 和 0。在這裡,二進位制數中每個數字的位置的權重是 2 的冪。
例如,(1011)2 是一個二進位制數。二進位制數是計算機裝置中最常用的數字系統,其中每個數字都由一個位元表示。
這裡我們使用遞迴將十進位制轉換為二進位制。遞迴是一個函式呼叫自身以完成指定任務的過程。
以下是相同內容的演示 -
輸入
假設我們給定的輸入是 -
Decimal Number = 10
輸出
期望的輸出將是 -
Binary number = 1010
演算法
以下是演算法 -
步驟 1 - 建立一個遞迴函式
步驟 2 - 宣告一個變數來儲存結果。
步驟 3 - 設定停止遞迴函式的基本條件。這裡基本條件是 (num != 0)
步驟 4 - 透過呼叫函式本身將十進位制數轉換為二進位制數,並返回結果。
StoreBinary = (num%2)+10*ConvertBinary(num: num/2)
步驟 5 - 宣告另一個變數來儲存十進位制數。
步驟 6 - 呼叫函式並將十進位制數傳遞給它。
步驟 7 - 列印輸出
示例
以下程式顯示瞭如何使用遞迴將十進位制數轉換為二進位制。
import Foundation import Glibc // Recursive function to convert decimal to binary func ConvertBinary(num: Int)->Int{ var StoreBinary:Int // Base condition if (num != 0){ // Converting decimal to binary StoreBinary = (num%2)+10*ConvertBinary(num: num/2) return StoreBinary } else{ return 0 } } // Decimal Number var decimalNum = 11 print("Decimal number is: (decimalNum)") print("Converted binary number is: ", ConvertBinary(num :decimalNum))
輸出
Decimal number is: (decimalNum) Converted binary number is: 1011
在上面的程式碼中,我們建立了一個名為 ConvertBinary() 的遞迴函式。此函式透過遞迴呼叫自身將十進位制數轉換為二進位制。因此,輸入的十進位制數為 11,因此等效的二進位制數為 1011。
廣告