Soigneusement dès le début les écueils de la division (division). Prenons Ruby comme exemple. L'introduction et l'explication sont très longues. La conclusion est [ici](utilisez la méthode #to_f).
Par exemple, supposons que vous vouliez faire "80 ÷ 100". La réponse attendue est "0,8" (ou un nombre égal) ...
80 / 100
=> 0
0 sera retourné. Pourquoi?
En effet, le calcul précédent est considéré comme un "calcul entre entiers". Je pense que "c'est entre des entiers", mais le calcul des entiers et des entiers ne renvoie que des entiers.
Par exemple, "101 ÷ 100" est également le même. J'aimerais que vous renvoyiez "1.01" comme réponse, mais ce sera comme suit.
101 / 100
=> 1
Pour obtenir la réponse que vous attendez, vous devez inclure quelques chiffres dans votre calcul. Vous devez dire: "Calculez comme une minorité, pas comme un entier!" Il faut être conscient que ceux-ci sont différents dans le programme, même pour des calculs auxquels vous ne portez pas une attention particulière au quotidien.
Par exemple, vous pouvez dire qu'un petit nombre de chiffres sont dans le calcul en écrivant:
80.0 / 100
=> 0.8
Tu peux écrire
80 / 100.0
=> 0.8
Vous pouvez écrire, bien sûr
80.0 / 100.0
=> 0.8
Mais c'est bien.
Je vois. Mais que faire si c'est une variable? J'aimerais connaître la méthode suivante pour gérer une telle situation.
La méthode to_f
peut être utilisée lorsque vous voulez la traiter comme une" minorité "dans Ruby. "F" signifie "f" de float, "nombre à virgule flottante". (C'est aussi un concept unique, mais il existe de nombreux articles auxquels vous pouvez vous référer, donc je vais vous le donner.)
Maintenant, comment l'utiliser, ajoutez simplement to_f
après la valeur numérique (la variable est OK).
80.to_f / 100
=> 0.8
Tu peux écrire
80 / 100.to_f
=> 0.8
Vous pouvez écrire, bien sûr
80.to_f / 100.to_f
=> 0.8
Mais c'est bien.
Avec cette méthode, il est normal de recevoir des variables.
n = 80
n.to_f / 100
=> 0.8
Vous avez les résultats que vous attendiez.
Recommended Posts