zéro inattendu dans la division: un piège commun
Les zéros inattendus des calculs de division sont une source fréquente d'erreurs de programmation. Examinons un scénario commun pour comprendre pourquoi cela se produit.
Le problème:
Considérez ce code:
1 |
|
Le résultat de cette division est étonnamment nul.
La solution:
La cause profonde est la division entier. Lors de la division des entiers, le résultat est tronqué (la partie fractionnaire est rejetée), conduisant à un résultat entier. Dans ce cas, 18 divisé par 58 est inférieur à 1, il est donc tronqué à 0.
Pour corriger cela, nous devons explicitement utiliser des valeurs décimales:
1 |
|
Le suffixe m
désigne chaque nombre comme un littéral décimal, garantissant une division à virgule flottante et un résultat précis et non nul. Cela oblige le calcul à utiliser l'arithmétique à virgule flottante, fournissant la réponse fractionnaire précise.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!