Arrondir un nombre Double à un nombre donné de décimales en Swift
Bonjour à tous ! Je viens de commencer à apprendre Swift et j'ai rencontré un problème qui semble simple, mais je n'arrive pas à trouver une solution élégante.
J'ai une variable de type `Double` qui stocke une valeur de temps en secondes, par exemple `let elapsedTime: Double = 3.14159265`. Je dois afficher cette valeur à l'utilisateur au format avec deux décimales, pour qu'on voie « 3.14 secondes ». Mais le nombre lui-même doit rester un nombre, pas une chaîne, car je vais l'utiliser dans des calculs ultérieurs.
J'ai essayé d'utiliser `String(format:)` pour l'affichage, mais cela donne une chaîne, pas un `Double`. Par exemple :
```swift
let value = 3.14159265
let formatted = String(format: "%.2f", value) // "3.14" — c'est un String, pas un Double
```
Quand j'essaie de reconvertir cette chaîne en `Double`, j'obtiens `Optional(3.14)`, mais ce n'est pas tout à fait la même chose que le nombre d'origine. De plus, j'ai des problèmes de précision pour les grands nombres ou en utilisant `NSTimeInterval`.
Existe-t-il un moyen
No answers yet.
Connectez-vous pour laisser une réponse