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

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

DDD
リリース: 2024-11-25 17:37:14
オリジナル
540 人が閲覧しました

How to Get a Float Result from Integer Division in C  ?

正確な除算のために整数を浮動小数点数にキャストする

C では、 a/b などで 2 つの整数を除算すると、整数商が求められます。 。 float の結果を取得するには、オペランドを float にキャストする必要があります。

問題ステートメント:

除算演算で整数オペランドを使用すると、結果は次のように切り捨てられます。整数。これを防ぎ、数値の整合性を維持するにはどうすればよいでしょうか?

解決策:

この問題を解決して浮動小数点数の結果を保証するには、オペランドを浮動小数点数にキャストします。

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;
  cout << fixed << setprecision(3);
  cout << (a/b) << endl;
  cout << ans << endl;
  return 0;
}
ログイン後にコピー

出力:

3
3.333
ログイン後にコピー

上で見たように、キャストにより浮動小数点の結果が保証され、正しい小数が保持されます。精度。

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

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