ここに示されているヒストグラムを生成するはずのコードセクションがあります。入れ子にされたforループが正しく機能しない
ostream& operator<<(ostream& outputStream, aHistogram& h){
outputStream << "Constructing histogram." << endl;
int numberOfBins = h.v.size();
int max = h.getMax();
int longest = h.getLongestLine();
int diceData = 0;
for (int i = 0; i < numberOfBins; ++i) {
outputStream << i + h.getNumDice() << ":";
diceData = h.v.at(i);
for (int x = 1; x <= (diceData/max) * longest; x++) {
outputStream << "X";
}
outputStream << endl;
}
return outputStream;}
問題は、それが唯一の最高値入力用のXさんの「最大」の数を生成し、ループは他の値のために、まったく動作しないようだ、です。ここに出力のスクリーンショットがあります。
は私が間違ってここに何が起こっているのか正確にはわかりません。整数演算を使用して
... [mcve]の略です。 – jtbandes
数字 '(diceData/max)* longest'を印刷しましたか?私はそれがゼロだと思います。 – jtbandes