PDA

View Full Version : Limitare le cifre decimali in C++


giopappy
20-10-2001, 13:18
printf("valore %f",fval)

se fvar è, per esempio, 0.5 a video mi da 0.500000 come fare a troncare gli zero inutili (visto che so a priori che la mia variabile ha al massimo una cifra decimale)?
Grazie:)

Ikitt
20-10-2001, 14:23
Originariamente inviato da giopappy
printf("valore %f",fval)

se fvar è, per esempio, 0.5 a video mi da 0.500000 come fare a troncare gli zero inutili (visto che so a priori che la mia variabile ha al massimo una cifra decimale)?
Grazie:)

Beh, visto che vuoi programmare in C++ potresti usare le classe e la gerachia di I/O del C++, std::cin e std::cout e relativi metodi e operatori!
In questo modo avresti a disposizione ad esempio l'attributo precision (4ex: std::cout.precision) che dovrebbe fare al caso tuo,
anche se non ricordo bene come :( (fatto una volta sola :D)

--
Un Ikitt di corsa

/\/\@®¢Ø
20-10-2001, 16:09
Nel tuo caso dovrebbe essere sufficiente usare %g ( per general ) invece che %f( per un numero fixed di numeri dopo la cifra ) , ma non ne sono sicuro, visto che non uso mai l'output del C ( qualcuno che lo conosce meglio potre' o meno confermare ).
In C++ questo formato e' quello default e quindi per fare quello che vuoi e' basta scrivere
cout << f ;

cionci
20-10-2001, 16:16
printf ("valore : %.1f", variabile);

giopappy
21-10-2001, 00:42
Grazie a tutti per le risposte.
Alla Prossima:)