Swift 程序将十进制转换为二进制

swiftserver side programmingprogramming更新于 2025/9/20 7:07:17

本教程将讨论如何编写 Swift 程序将十进制转换为二进制。

十进制数是指基数为 10 的数字。十进制数也称为十进制数系,包含 10 个数字:0、1、2、3、4、5、6、7、8、9。其中,十进制数中每位数字的权重是 10 的幂。例如,(89)10 = 8 x 101 + 9 x 100。

二进制数是指基数为 2 的数字。二进制数也称为十六进制数系二进制数系统中,每个数字的位置都具有 2 的幂次方权重。

例如,(1011)2 就是一个二进制数。二进制数是计算机设备中最常用的数字系统,每个数字都由一位表示。

现在,我们使用以下任意一种方法将十进制数转换为二进制数(二进制数)。

以下是相同的演示 -

输入

假设给定的输入是 -

十进制数 = 20

输出

所需的输出将是 -

二进制数 = 10100

方法 1 - 使用位运算符

我们可以使用按位右移运算符和与 (&) 运算符将十进制数转换为二进制数。它比算术运算符快得多。

示例

以下程序演示如何将十进制转换为二进制。

import Foundation 
import Glibc

// 十进制数
var decimalValue = 59

// 字符串二进制数
var binaryValue = ""

print("十进制数: ", decimalValue)

// 将十进制数转换为二进制数
while(decimalValue > 0) {
    // 执行按位与运算,找出 1 和 0
    if ((decimalValue & 1) == 1){
        // 存储"1"
        binaryValue += "1"
    }
    else {
        // 存储"1"
        binaryValue += "0"
        }
    
    // 将十进制数右移 1
   decimalValue >>= 1 
}

// 反转字符串
var res = String(binaryValue.reversed())

print("二进制数: ", res)

输出

十进制数: 59
二进制数: 111011

方法 2 - 使用幂

我们也可以通过提取数字中的每个数字,然后将提取出的数字乘以基数(10 的幂),并添加到二进制变量中,将二进制数转换为十进制数。程序结束时,您将获得二进制变量中的所有二进制数字。

示例

以下程序演示如何将十进制转换为二进制数。

import Foundation 
import Glibc

// 十进制数
var decimalValue = 19

// 字符串二进制数
var binaryValue = 0
var count = 0.0

print("十进制值:", decimalValue)

// 将十进制转换为二进制
while(decimalValue != 0){

    // 使用余数从十进制数中提取最右边的数字
    let remainder = decimalValue % 2
    
    // 计算 10 的幂
    let value = pow(10.0, count)
    
    // 现在将该数字与底数(2 的幂)相乘,并将该值添加到 binaryValue 中
    binaryValue += remainder * Int(value)
    
    // 将十进制数除以 2
    decimalValue /= 2
    
    // 存储指数值
   count += 1 
}

print("二进制值:", binaryValue)

输出

十进制值:19
二进制值:10011

方法 3 - 使用预定义函数

我们也可以使用 String(_:radix:) 将十进制转换为二进制。此方法根据给定的字符串/数字和基数创建一个新值。

语法

语法如下:

String(value, radix: base)

其中,value 是数字的 ASCII 表示形式。而 radix 用于将文本转换为整数值。基数的默认值为 10,取值范围为 2…36。

示例

以下程序演示如何将十进制转换为二进制。

import Foundation 
import Glibc

// 十进制数
var number = 5

print("十进制数:", number)

// 将十进制转换为二进制
let BinaryNumber = String(number, radix: 2)

print("二进制数:", BinaryNumber)

输出

十进制数:5
二进制数:101

这里,我们使用以下代码将十进制数 5 转换为二进制数 -

let BinaryNumber = String(number, radix: 2)

其中 String(number, radix: 2) 将给定的十进制数转换为二进制数。因此,结果二进制数为 101。



相关文章



关于我们 | 隐私条款 | 学习路线
返回顶部