Swift程式:將二進位制轉換為十進位制
本教程將討論如何編寫Swift程式將二進位制數轉換為十進位制數。
十進位制數是以10為基數的數字。十進位制數也稱為基數10數系,包含10個數字:0、1、2、3、4、5、6、7、8、9。這裡,十進位制數中每個數字的位置權重都是10的冪。例如,(89)10 = 8 x 101 + 9 x 100。
二進位制數是以2為基數的數字。二進位制數也稱為基數2數系,只包含兩個數字1和0。這裡,二進位制數中每個數字的位置權重都是2的冪。
例如,(1011)2是一個二進位制數。二進位制數是計算機裝置中最常用的數系,其中每個數字都由一個位元表示。
現在我們使用以下任何一種方法將二進位制(基數2)轉換為十進位制(基數10)數。
以下是演示:
輸入
假設我們的給定輸入是:
Binary number = 11011
輸出
期望的輸出是:
Decimal number = 27
方法1:使用2的冪將十進位制轉換為二進位制數
示例
我們還可以透過從數字中提取每個數字,然後將提取的數字乘以基數(2的冪),並新增到十進位制變數中來將十進位制轉換為二進位制數。程式結束時,您將在十進位制變數中獲得所有十進位制數字。
例如:
Binary number = 101 Decimal Number = 1 * 22 + 0 * 21 + 1 * 20 = 4 + 0 + 1 = 5
示例
以下程式演示如何將二進位制數轉換為十進位制數。
import Foundation
import Glibc
// Binary number
var number = 101101
var decimalNum = 0
var baseVal = 1
print("Binary Number: ", number)
// Converting binary into decimal
while(number > 0){
// Extraction rightmost with the help
// of remainder
let endVal = number % 10
number /= 10
// Multiple the extracted digit with the base(power of 2)
// and then add it to the decimalNum
decimalNum += endVal * baseVal
baseVal *= 2
}
print("Decimal Number: ", decimalNum)
輸出
Binary Number: 101101 Decimal Number: 45
方法2 - 使用Int(_:radix:)將二進位制數轉換為十進位制數系。
我們還可以使用Int(_:radix:)將二進位制數轉換為十進位制數系。此方法根據給定的字串/數字和基數建立一個新值。
語法
以下是語法:
Int(value, radix: base)
這裡,value是數字的ASCII表示。而radix用於將文字轉換為整數值。radix的預設值為10,其範圍可以是2…36。
示例
以下程式演示如何將二進位制數轉換為十進位制數。
import Foundation
import Glibc
// Decimal number
var number = "11110"
print("Binary Number:", number)
// Converting binary to decimal number
let DecimalNumber = Int(number, radix: 2)!
print("Decimal Number:", DecimalNumber)
輸出
Binary Number: 11110 Decimal Number: 30
這裡,我們使用以下程式碼將二進位制數11110轉換為十進位制數:
let DecimalNumber = Int(number, radix: 2)!
其中Int(number, radix: 2)! 將給定的二進位制數轉換為十進位制數。因此,結果十進位制數為30。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP