• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C++初心者です。簡単なスコア計算のプログラムのはずなのに…。)

C++初心者の疑問:スコア計算プログラムでなぜKDが0になるのか

このQ&Aのポイント
  • C++初心者が作成したスコア計算プログラムで、KDが0になってしまう問題が発生しています。何が原因でしょうか?
  • C++初心者が作成したプログラムの実行結果で、スコア計算の結果KDが0になってしまう問題があります。解決策はありますか?
  • スコア計算プログラムを作成していますが、KDが意図した結果にならない問題が発生しています。どのように修正すれば良いでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • edomin7777
  • ベストアンサー率40% (711/1750)
回答No.2

KDをfloat型にする。 int k , d; float kd ; 計算するときに、float型にキャストする kd = (float)k / ( k + d ) * 100 k / ( k + d ) を計算した段階で、int型に丸められるので答えは0になります。

watavfx
質問者

お礼

int型では、小数は使えない ということですね。 無事、正しい値を出すことが出来ました。 ありがとうございます。

すると、全ての回答が全文表示されます。

その他の回答 (1)

回答No.1

int型 / int型 の結果はint型である 7 / 5 = 1 double型 / double型やそれに変換される場合はdouble型が帰る (double)7 / 5 = 1.4 → double / int → double / double http://ideone.com/dnIJC

watavfx
質問者

お礼

浮動小数点型を使用するということですね。 ありがとうございます。

すると、全ての回答が全文表示されます。

関連するQ&A