Pillole C++ n.2 – La manipolazione dei dati in C++ – Lezione

La manipolazione dei dati in C++ – Lezione 2 Nella lezione precedente abbiamo visto che la gestione dell’Input Output è delegata alla libreria iostream la quale mette a disposizione del programmatore le istruzioni cin e cout. Ora tali istruzioni sebbene utili non consentono la formattazione dell’Input e dell’Output. Ad esempio se il risultato di una divisione fra due numeri ha un numero elevato di cifre decimali come fare per troncare ad un numero di cifre voluto il numero ? Dobbiamo innanzitutto ricordare che i numeri reali in singola e doppia precisione in C++ sono dichiarati con float e double che la rappresentazione nel calcolatore dei numeri reali avviene in virgola mobile ovvero scrivendo il numero in notazione scientifica normalizzata. Ad esempio il numero x=-432,334441 in notazione normalizzata si esprime come x=-0,432334441 x10E3. Quindi il numero si compone di una mantissa parte frazionaria compressa fra 0 e 1 e da una caratteristica esponente della base 10. Il C++ calcola e visualizza i risultati in forma scientifica. E’ opportuno richiamare prima delle funzioni per il passaggio di un numero in rappresentazione in virgola mobile a virgola fissa. Per far questo negli header del programma si deve richiamare la libreria iomanip che aggiunge nuove caratteristiche alle istruzioni cin e cout e non solo per la manipolazione dei numeri ma anche delle stringhe. Ora per passare alla rappresentazione in virgola fissa si utilizza la parola riservata fixed e per impostare il numero di cifre decimale. Il tutto deve precedere la stampa del numero nell’istruzione cout in quanto deve preparare il formato opportuno. In altri termini tornando al numero x si ha che per stamparlo con tre cifre decimali avrò: cout << fixed << setprecision(3) << x; Quindi l’istruzione fixed passa alla rappresentazione in virgola fissa, mentre l’istruzione setprecision imposta il numero di cifre decimali.…

Tu devi essere registrato per visualizzare questo articolo.

Esegui la registrazione per accedere a questo contenuto.

inserimento cognome utente