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 是一个二进制数。二进制数是计算机设备中最常用的数字系统,其中每个数字都由一个比特表示。
现在,我们使用以下任何一种方法将十进制(基数为 10)转换为二进制(基数为 2)数。
以下是相同的演示 -
输入
假设我们给定的输入是 -
Decimal number = 20
输出
所需的输出将是 -
Binary number = 10100
方法 1 - 使用按位运算符
我们可以使用按位右移运算符和 AND(&) 运算符将十进制数转换为二进制数。它比算术运算符快得多。
示例
以下程序显示了如何将十进制数转换为二进制数。
import Foundation
import Glibc
// Decimal Number
var decimalValue = 59
// String binary number
var binaryValue = ""
print("Decimal Number: ", decimalValue)
// Converting decimal to binary number
while(decimalValue > 0) {
// Perform bitwise AND operation to find 1 and 0
if ((decimalValue & 1) == 1){
// Store “1”
binaryValue += "1"
}
else {
// Store “1”
binaryValue += "0"
}
// Right shift the decimal number by 1
decimalValue >>= 1
}
// Reversing the string
var res = String(binaryValue.reversed())
print("Binary Number: ", res)
输出
Decimal Number: 59 Binary Number: 111011
方法 2 - 使用幂
我们还可以通过从数字中提取每个数字,然后将提取的数字乘以基数(10 的幂)并添加到二进制变量中来将二进制转换为十进制数。在程序结束时,您将在二进制变量中获得所有二进制数字。
示例
以下程序显示了如何将十进制数转换为二进制数。
import Foundation
import Glibc
// Decimal Number
var decimalValue = 19
// String binary number
var binaryValue = 0
var count = 0.0
print("Decimal Value:", decimalValue)
// Converting decimal to binary number
while(decimalValue != 0){
// Extraction rightmost digit from the decimal number using remainder
let remainder = decimalValue % 2
// Find power of 10
let value = pow(10.0, count)
// Now multiply the digit with the base(power of 2) and add the value to the binaryValue
binaryValue += remainder * Int(value)
// Divide the decimal number by 2
decimalValue /= 2
// Store the exponent value
count += 1
}
print("Binary Value:", binaryValue)
输出
Decimal Value: 19 Binary Value: 10011
方法 3 - 使用预定义函数
我们还可以使用 String(_:radix:) 将十进制数转换为二进制数系统。此方法根据给定的字符串/数字和基数创建一个新值。
语法
以下是语法 -
String(value, radix: base)
这里,value 是数字的 ASCII 表示形式。而 radix 用于将文本转换为整数值。radix 的默认值为 10,其范围可以是 2…36。
示例
以下程序显示了如何将十进制数转换为二进制数。
import Foundation
import Glibc
// Decimal number
var number = 5
print("Decimal Number:", number)
// Converting decimal to binary
let BinaryNumber = String(number, radix: 2)
print("Binary Number:", BinaryNumber)
输出
Decimal Number: 5 Binary Number: 101
这里,我们使用以下代码将十进制数 5 转换为二进制数 -
let BinaryNumber = String(number, radix: 2)
其中 String(number, radix: 2) 将给定的十进制数转换为二进制数。因此,结果二进制数为 101。
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP