Je suis actuellement en train d'arrondir un nombre flottant, mais je reçois un message d'erreur comme: méthode non définie round_to pour float 16,666667 .. et mon code pour arrondir estQuel type de type de données peut être arrondi?
option = [keys[count], (((o.poll_votes.count.to_f)/@general_poll.poll_votes.count.to_f)*100).round_to(1)]
Et ce qui me suprises le plus est que J'ai utilisé ce code à plusieurs endroits et fonctionne très bien .. mais maintenant, il me donne des erreurs.
merci d'avance.
J'ai réalisé qu'il n'y avait rien dans la bibliothèque, pouvez-vous s'il vous plaît expliquer en détail comment je peux utiliser ce patch de singe? de toute façon merci pour la réponse. –
La correction de singe est juste une façon de dire des méthodes d'ajout à une classe déjà définie. Si vous ajoutez ce code à votre projet, il étendra Float et les méthodes seront disponibles. J'ai vérifié la gemme des facettes et il semble qu'ils ont 2 méthodes round_to et round_at. round_at imite le code affiché ci-dessus .. désolé si cela a causé la confusion. –
Dans mon application, j'ai dû supprimer le '.to_f' dans la ligne 3 après' (self * 10 ** x) .round' pour éviter les chiffres résiduels désagréables quand je 'round_to (5)' par exemple. 'Pente = -0.4123800000000001' – Marcos