new roundValue
This commit is contained in:
parent
35d391d589
commit
f93ddf1446
|
|
@ -11,31 +11,34 @@ import Foundation
|
|||
public extension Double {
|
||||
|
||||
/**
|
||||
rounds double value 1.7860000004 to 1.79
|
||||
Type of rounding double value
|
||||
|
||||
- parameter val: value for rounding
|
||||
- parameter persicion: important number of digits after comma
|
||||
|
||||
- returns: rounded value
|
||||
- Normal: From 167.567 you will get 167.6
|
||||
- Down: From 167.567 you will get 167.5
|
||||
*/
|
||||
public func roundValue(withPersicion persicion: UInt) -> Double {
|
||||
let divider = pow(10.0, Double(persicion))
|
||||
|
||||
return round(self * divider) / divider
|
||||
public enum RoundingType {
|
||||
case Normal
|
||||
case Down
|
||||
}
|
||||
|
||||
/**
|
||||
discard dractional part double value 1.7860000004 to 1.78
|
||||
Rounding of double value
|
||||
|
||||
- parameter val: value for discarding dractional part
|
||||
- parameter persicion: important number of digits after comma
|
||||
- parameter roundType: rounding type
|
||||
|
||||
- returns: value with discarded dractional part
|
||||
- returns: rounded value
|
||||
*/
|
||||
func discardFractionalTo(number: Int) -> Double {
|
||||
let divider = pow(10.0, Double(number))
|
||||
let roundedNumber = Double(Int(self * divider)) / divider
|
||||
return roundedNumber
|
||||
public func roundValue(withPersicion persicion: UInt,
|
||||
roundType: RoundingType = .Normal) -> Double {
|
||||
let divider = pow(10.0, Double(persicion))
|
||||
|
||||
switch roundType {
|
||||
case .Normal:
|
||||
return round(self * divider) / divider
|
||||
case .Down:
|
||||
return Double(Int(self * divider)) / divider
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue