Buona sera,
ho sviluppato un programmino che, come si legge dal titolo, converte numeri decimali in numeri binari. Il programma funziona e restituisce i valori corretti con due difetti:
1) me li visualizza in ordine inverso (ma a quello ci penserò dopo, e proverò da solo a risolvere tale problema);
2) non mi visualizza la prima cifra del resto: ad esempio io ho provato col numero 122 (il cui valore binario è 01111010 ), ma me lo visualizza in ordine inverso e senza la prima cifra, cioè così: [I] 1011110[I].
Come sempre vorrei arrivare a risolvere problema senza avere la soluzione già bella e pronta: vorrei infatti arrivarci da solo mediante una Vostra delucidazione.
Per tanto Vi posto il programma in questione:
Grazie e aspetto Vostre notizie.codice:#include <iostream> #include <cmath> using namespace std; int main() { const int divisore = 2; int resto; int ris; int n; // numero da convertire do { cout << "Inserisci un numero positivo \n"; cin >> n; }while (n < 0); while(n > 0) { n = n / divisore; resto = n % divisore; cout << "Il resto parziale e' " << resto << "\n"; } system("pause"); return 0; }