ディビジョンの予期しないゼロ:一般的な落とし穴
分割計算からの予期しないゼロは、プログラミングエラーの頻繁なソースです。これがなぜ起こるのかを理解するための一般的なシナリオを調べましょう。
問題: このコードを検討してください:
この部門の結果は驚くほどゼロです。
<code class="language-c#">decimal share = (18 / 58) * 100;</code>
解決策:
根本原因は整数部です。 整数を分割すると、結果は切り捨てられ(分数部分が破棄されます)、整数の結果になります。この場合、58で割った18は1未満であるため、0に切り捨てられます。 これを修正するには、小数値を明示的に使用する必要があります
接尾辞は、各数値を小数リテラルとして指定し、浮動小数点分割と正確でゼロ以外の結果を確保します。 これにより、計算は浮動小数点算術を使用し、正確な分数回答を提供します。
以上が整数部門がゼロになるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。