J'essaie d'apprendre à utiliser des déclarations d'espaces de noms plus définitives que de simplement dire "using namespace std". J'essaie de formater mes données à 2 décimales, et de définir le format à corriger et non scientifique. Ceci est mon fichier principal:format, iomanip, C++
#include <iostream>
#include <iomanip>
#include "SavingsAccount.h"
using std::cout;
using std::setprecision;
using std::ios_base;
int main()
{
SavingsAccount *saver1 = new SavingsAccount(2000.00);
SavingsAccount *saver2 = new SavingsAccount(3000.00);
SavingsAccount::modifyInterestRate(.03);
saver1->calculateMonthlyInterest();
saver2->calculateMonthlyInterest();
cout << ios_base::fixed << "saver1\n" << "monthlyInterestRate: " << saver1->getMonthlyInterest()
<< '\n' << "savingsBalance: " << saver1->getSavingsBalance() << '\n';
cout << "saver2\n" << "monthlyInterestRate: " << saver2->getMonthlyInterest()
<< '\n' << "savingsBalance: " << saver2->getSavingsBalance() << '\n';
}
sur Visual Studio 2008, quand je lance mon programme, je reçois une sortie de « 8192 » avant que les données que je veux. Y at-il une raison à cela?
En outre, je ne pense pas que je mets la partie fixe ou 2 décimales correctement puisque je semble obtenir la notation scientifique une fois que j'ai ajouté le setprecision (2). Merci.
La variante 'money_put' imprime' 123' au lieu de '$ 1,23' sur ma machine. Cela ne devrait pas être une sortie acceptable pour n'importe quel environnement local. – jfs
@ J.F. - La production attendue est de 1,23 $. Quelle plateforme utilises-tu? – Potatoswatter
@Potatoswatter: http://codepad.org/EY5PqSIw – jfs