ホームページ >バックエンド開発 >C++ >C で整数の除算から浮動小数点の結果を取得するにはどうすればよいですか?

C で整数の除算から浮動小数点の結果を取得するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-11-11 01:00:02486ブラウズ

How to Get a Floating-Point Result from Integer Division in C  ?

浮動小数点結果の整数の除算

結果を格納するために浮動小数点変数を使用しているにもかかわらず、整数の除算では次のような結果が得られる可能性があります。切り捨てられた出力。入力変数を整数として維持しながらこの問題を解決するには、次の解決策を検討してください。

オペランドを明示的に浮動小数点にキャストします。

float ans = (float)a / (float)b;

このキャスト操作により、コンパイラは浮動小数点を実行するように強制されます。除算により、オペランドが整数の場合でも浮動小数点の結果が保証されます。以下の例は、予想される動作を示しています:

#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
  int a = 10, b = 3;
  float ans = (float)a / (float)b;  // Explicit casting to floats
  cout << fixed << setprecision(3);
  cout << ans << endl;  // Floating-point result
  return 0;
}

以上がC で整数の除算から浮動小数点の結果を取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。