ホームページ > バックエンド開発 > C++ > ゼロ以外の入力にもかかわらず、なぜ私の部門はゼロになるのですか?

ゼロ以外の入力にもかかわらず、なぜ私の部門はゼロになるのですか?

Mary-Kate Olsen
リリース: 2025-01-29 11:36:10
オリジナル
309 人が閲覧しました

Why Does My Division Result in Zero Despite Non-Zero Inputs?

予期しないゼロ部門の結果:一般的な落とし穴

数値を分割すると、両方の入力がゼロでない場合でもゼロを取得するなど、驚くべき結果が得られる場合があります。これは、計算中にプログラミング言語がデータ型を処理する方法に起因することがよくあります。

このコードの例を検討してください:

<code>decimal share = (18 / 58) * 100;</code>
ログイン後にコピー
ここでは、18と58は整数として扱われます。整数部門は常に整数結果を生み出します。部分的な部分は切り捨てられます。 したがって、18は0で58の結果で割っています

ソリューションは、小数データ型を使用して部門を実行することを確認することです。

「M」接尾辞は、数字を小数として明示的にキャストします。 これにより、小項除算が強制され、正確でゼロ以外の結果が得られます。 この単純な変更により、切り捨てエラーが防止され、問題が解決します。

以上がゼロ以外の入力にもかかわらず、なぜ私の部門はゼロになるのですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート