Linguaggio C/C++ – Conversione di un numero decimale in binario

Codice completo

Di seguito si presenta il codice nella sua completezza.

#include <iostream>
#include <math.h>
using namespace std;

int main()
{
	
 // definizione di una costante per definire il numero di bit
 // e successiva creazione di un array di uguale dimensione
 const short Dimensione = 8; 
 short Binario[Dimensione]; 
 
 short Numero; // Variabile di input
 short i; // contatore del ciclo For

 // inizializzazione dell'array
 for(i=0;i<Dimensione;i++) 
	Binario[i] = 0;

 // Calcolo Valore massimo convertibile
 short ValoreMAX = pow(2, (Dimensione - 1)) - 1;
 // Calcolo Valore minimo convertibile 
 short ValoreMIN = pow(2, (Dimensione - 1)) * (-1); 

 cout << endl << "CONVERSIONE DECIMALE ---> B I N A R I O"; 
 cout << " SU 8 BIT" << endl << endl << endl;


 do{
 	cout << "Digitare un numero in base 10 compreso tra "; 
 	cout << ValoreMIN << " e " << ValoreMAX << ": ";
 	cin >> Numero;
	if (Numero<ValoreMIN || Numero>ValoreMAX) 
		cout << endl << "Valore non corretto!" << endl;
	} while(Numero<ValoreMIN || Numero>ValoreMAX);

 // utilizzo di una variabile di appoggio 
 // per non perdere il valore di input
 short Appoggio = Numero;
 
 for(i=7;i>=0;i--) {
 	Binario[i] = Appoggio % 2;
 	Appoggio /= 2;
 }
 
 
 cout << endl << endl << "Numero Decimale: ";
 cout << Numero << "   --->  Numero Binario: "; 

 for(i=0;i<Dimensione;i++)
  	cout << Binario[i];
  


 cout << endl << endl;
 system ("PAUSE");
 return 0;
}

Visite: 5508

Pagine: 1 2 3 4 5 6 7