Swift程序:将数字舍入到n位小数


本教程将讨论如何编写一个Swift程序,将数字舍入到n位小数。

舍入数字意味着将小数舍入到一定的小数位数,或者可以说舍入到最接近的整数、十分位、百分位或千分位。它可以节省时间,并有助于将长期表达为短期。舍入仅适用于Float和Double数据类型。舍入数字时,请始终记住以下几点:

如果最后一位数字小于5(即0、1、2、3、4),则将前一位数字向下舍入。例如,52.12舍入到最接近的十分位是52.1,因为1后面跟着2,而2小于5。

如果最后一位数字大于5(即5、6、7、8、9),则将前一位数字向上舍入。例如,52.18舍入到最接近的十分位是52.2,因为1后面跟着8,而8大于5。

以下是相同的演示:

输入

假设我们的给定输入是:

Entered number - 456.3478

输出

期望输出为:

Rounded number(hundredth place)- 456.35

在Swift中,我们可以使用以下任何方法舍入数字:

方法1 - 使用Round函数

Swift提供一个名为round()的内置函数。此函数用于将给定数字舍入到最接近的整数。它接受Float和Double。

语法

以下是语法:

func round(number)

示例1

以下程序演示了如何使用round()函数将数字舍入到n位小数。

import Swift import Foundation var n1 : Float = 6.98 var n2 : Double = 876.876 var n3 : Double = -0.987 // Floating point number print("Round number \(n1):", round(n1)) // Positive double number print("Round number \(n2):", round(n2)) // Negative double number print("Round number \(n3):", round(n3))

输出

Round number 6.98: 7.0
Round number 876.876: 877.0
Round number -0.987: -1.0

示例2

以下程序演示了如何使用round()函数将数字舍入到n位小数。

import Swift import Foundation var n1 : Float = 34.459 var n2 : Double = 7.89098 var n3 : Double = -3.96396238638 // Round Floating point number to one(tenths) decimal place print("Round number \(n1):", round(n1 * 10)/10.0) // Round positive double number to two(hundredths) decimal place print("Round number \(n2):", round(n2 * 100)/100.0) // Round negative double number to three(thousandths) decimal place print("Round number \(n3):", round(n3 * 1000)/1000.0)

输出

Round number 34.459: 34.5
Round number 7.89098: 7.89
Round number -3.96396238638: -3.964

方法2 - 使用Ceil函数

Swift提供一个名为ceil()的内置函数。此函数用于将给定数字舍入到大于或等于给定数字的最近的最小整数。它也接受Float和Double。

语法

以下是语法:

func ceil(num)

示例1

以下程序演示了如何使用ceil()函数将数字舍入到n位小数。

import Swift import Foundation var n1 : Float = 2.45 var n2 : Double = 42.93 var n3 : Double = -2.03 // Floating point number print("Round number \(n1):", ceil(n1)) // Positive double number print("Round number \(n2):", ceil(n2)) // Negative double number print("Round number \(n3):", ceil(n3))

输出

Round number 2.45: 3.0
Round number 42.93: 43.0
Round number
2.03: 2.0

示例2

以下程序演示了如何使用ceil()函数将数字舍入到n位小数。

import Swift import Foundation var n1 : Float = 2.45 var n2 : Double = 198.890 var n3 : Double = -2.0808777 // Round Floating point number to one(tenths) decimal place print("Round number \(n1):", ceil(n1 * 10)/10.0) // Round positive double number to two(hundredths) decimal place print("Round number \(n2):", ceil(n2 * 100)/100.0) // Round negative double number to three(thousandths) decimal place print("Round number \(n3):", ceil(n3 * 1000)/1000.0)

输出

Round number 2.45: 2.5
Round number 198.89: 198.89
Round number -2.0808777: -2.08

方法3 - 使用Floor函数

Swift提供一个名为floor()的内置函数。此函数用于将给定数字舍入到小于或等于给定数字的最近的最大整数。它也接受Float和Double。

语法

以下是语法

func floor(num)

示例1

以下程序演示了如何使用floor()函数将数字舍入到n位小数。

import Swift import Foundation var n1 : Float = 23.45 var n2 : Double = 4.89 var n3 : Double = -7.09 // Floating point number print("Round number \(n1):", floor(n1)) // Positive double number print("Round number \(n2):", floor(n2)) // Negative double number print("Round number \(n3):", floor(n3))

输出

Round number 23.45: 23.0
Round number 4.89: 4.0
Round number -7.09: -8.0

示例2

以下程序演示了如何使用floor()函数将数字舍入到n位小数。

import Swift import Foundation var n1 : Float = 256.45 var n2 : Double = 98.89324 var n3 : Double = -5.0808777 // Round Floating point number to one(tenths) decimal place print("Round number \(n1):", floor(n1 * 10)/10) // Round positive double number to two(hundredths) decimal place print("Round number \(n2):", floor(n2 * 100)/100) // Round negative double number to three(thousandths) decimal place print("Round number \(n3):", floor(n3 * 1000)/1000)

输出

Round number 256.45: 256.4
Round number 98.89324: 98.89
Round number -5.0808777: -5.081

更新于:2022年8月18日

6K+ 浏览量

开启您的职业生涯

通过完成课程获得认证

开始学习
广告