Ich schreibe ein Programm, um ein Plinko Board zu simulieren, und innerhalb dieses Programms habe ich eine Funktion, die das Geld ausgibt, das jedem Slot zugewiesen ist. Ich versuche, std :: fixed und std :: setprecision zu verwenden, um jeden Wert mit zwei Nullen nach der Dezimalstelle auszugeben, aber jeder Wert wird ausgegeben, als ob ich überhaupt nicht repariert hätte. Was vermisse ich? Hier ist mein Code:Was fehlt mir bei der Verwendung von std :: fixed?
#include <iostream>
#include <iomanip>
using namespace std;
void ChipsAllSlots(int numChips) {
const int NUM_SLOTS = 9;
const int slotWinnings[NUM_SLOTS] = {100, 500, 1000, 0, 10000, 0, 1000, 500, 100};
for (int i = 0; i < numChips; ++i) {
cout << fixed << setprecision(2) << slotWinnings[i] << endl;
}
}
int main() {
ChipsAllSlots(9);
return 0;
}
'slotWinnings []' hat den Typ 'int'. 'fixed' und' setprecision() 'werden bei der Ausgabe von' int'-Werten nicht berücksichtigt. Wenn Sie einen Dezimalpunkt und zwei 0 Ziffern wünschen, drucken Sie einfach ".00" '. – Scheff