/* Programma 67cppDecimaleBinario compilato con dev-c++ questo programma converte i numeri decimali in numeri binari Riontino Raffaele 3AS INF I.T.I.S. Ettore Molinari - Milano - 14-3-'10 */ #include #include #include #include #include using namespace std; HANDLE hConsole; void primariga(); int inserimentodecimale(); int controllonumeri(char provvisorio[]); void conversione(int decimale); void ultimariga(); main() { hConsole = GetStdHandle(STD_OUTPUT_HANDLE); int decimale; char scelta; do{ primariga(); decimale=inserimentodecimale(); conversione(decimale); SetConsoleTextAttribute (hConsole, 8); cout << "\n\n\tVuoi eseguire un nuovo calcolo ? (s / n) "; scelta = getch(); scelta = tolower(scelta); }while (scelta == 's'); ultimariga(); }//chiusura main //funzione primariga void primariga() { system ("cls"); SetConsoleTextAttribute (hConsole, 3); cout << "\n\tProgramma 67cppDecimaleBinario Riontino Raffaele 3 AS INF"; cout << "\n\n\tI.T.I.S. Ettore Molinari - Milano - 14 - 3 - '10\n\n"; SetConsoleTextAttribute (hConsole, 4); cout << "\n\tProgramma che trasforma in binario un numero decimale\n"; }//chiusura primapagina //funzione inserimentodecimale int inserimentodecimale() { char provvisorio[30]; int decimale,errore; SetConsoleTextAttribute (hConsole, 7); do{ cout << "\n\n\tInserisci un numero decimale : "; cin.getline(provvisorio,50); errore=controllonumeri(provvisorio); decimale=atoi(provvisorio); }while (errore); return decimale; }//chiusura inserimento giorno //funzione controllonumeri int controllonumeri(char provvisorio[]) { int flag,k,e; e=0; flag=1; k=0; while ((flag) && (k 57)) { e=1; flag=0; cout << "\n\n\tCi sono caratteri non numerici.Ripeti!!\n"; } k++; } return e; }//chiusura controllonumeri //funzione conversione void conversione(int decimale) { int i,j,temp; int a[10000],b[10000],dim; temp = decimale; i = 0; dim = 0; while (temp > 0) { a[i] = temp % 2; temp = temp / 2; i++; } dim = i; j = dim -1; for (i = 0; i