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+ 瀏覽量

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告