Code Fix

初級 › int同士の割り算で小数点以下が消えるバグ › パターン5

int同士の割り算で小数点以下が消えるバグ

int型同士の割り算は小数点以下を切り捨てたint型の結果になるバグです。

 1  #include <iostream>
 2  #include <iomanip>
 3  int main() {
 4      int total = 50;
 5      int weeks = 3;
 6      double perWeek = total _______ weeks;
                                  ^
 7      std::cout << std::fixed << std::setprecision(2) << perWeek << std::endl;
 8      return 0;
 9  }
出力: 16.00期待: 16.67

空欄を埋めてコンパイル・実行を通す

広告
広告スロット(未設定)

int同士の割り算で小数点以下が消えるバグ

その結果をdouble型に代入しても、切り捨てはすでに終わったあとなので元には戻りません。

このエラーの解説と類題をまとめて見る →

広告
広告スロット(未設定)