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。
广告