|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Mar 2008
Messaggi: 12
|
[C++] Formato output: allineare virgola
ciao, mi sto chiedendo questo:
Nel mio file di output ho una serie di numeri con virgola. Ho utilizzato setprecision con fixed e showpoint per fissare il numero delle cifre dopo la virgola e scrivere gli zeri anche finali, pero' nel caso in cui prima della virgola ho un segno - o un numero diverso di cifre si perde l'allineamento della colonna dei dati. Ho usato outputfile << variabile1 << variabile2 ecc. C'e' una formula per allineare il decimal point o devo usare per forza fprintf? |
|
|
|
|
|
#2 |
|
Junior Member
Iscritto dal: Mar 2008
Messaggi: 12
|
nessuno sa darmi una mano?
|
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Metti il + davanti ai numeri positivi: Codice:
string s;
if(n > 0)
{
ostringstream oss;
oss << "+" << fixed << setprecision(5) << showpoint;
oss << n;
cout << oss.str();
}
else
{
stampi il numero normalmente.
}
|
|
|
|
|
|
|
#4 |
|
Junior Member
Iscritto dal: Mar 2008
Messaggi: 12
|
Questo l'avevo gia' provato, ma mi resta il problema di quando prima della virgola c'e' un numero diverso di cifre, es.
+100.qualcosa -99.qualcosa |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ma questo lo risolvi con:
cout << setw(10) << right |
|
|
|
|
|
#6 |
|
Junior Member
Iscritto dal: Mar 2008
Messaggi: 12
|
Risolto! cosi' facendo, una volta fissate le cifre dopo la virgola, non c'e' neanche bisogno di mostrare il segno +! grazie mille
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:12.




















