PDA

Visualizza la versione completa : Programma Ottale-Decimale in C++


Raul_1706
17-12-2014, 17:20
Salve, devo fare un programma in C++ che converta da ottale a decimale ma non ci riesco, ormai sto impazzendo. Fino ad ora ho fatto sia decimale binario e viceversa ma questo non riesco proprio a capire come si fa.

Grazie in anticipo

Scara95
17-12-2014, 17:37
Dato un numero di n cifre ottali numerando le cifre da 0 a (n-1) partendo da destra, l'equivalente decimale č
25067

Ovvero n = 24 ottale n = 4*8^0 + 2*8^1 = 4*1 + 2*8 = 4 + 16 = 20

Nota che dato il numero cn c(n-1) ... c0
Puoi riscriverlo in decimale con la formula equivalente c0 + 8*(c1 + 8*(c2 + ....)) che puņ essere facilmente frasformata in un loop

oregon
17-12-2014, 19:10
Come hai fatto da binario a decimale?

Raul_1706
17-12-2014, 19:47
Binario-Decimale :

#include <iostream>
#include <cstdlib>
using namespace std;


int main()
{
int x, dec, bin;
cout<<"Inserisci un numero binario: ";
cin >> bin;
x=1;
dec=0;

for (x=1,dec=0;bin;x*=2,bin/=10)
dec+=(bin%10)*x;
cout <<"Numero in decimale : " << dec << endl;

system("pause");
return 0;
}

Raul_1706
17-12-2014, 19:56
ho risolto
grazie lo stesso

oregon
17-12-2014, 20:42
ho risolto

Sarebbe bene descrivere come, per gli altri che leggeranno il forum ...


grazie lo stesso

"Lo stesso"? Non hai avuto il codice ma sicuramente tutto quello che ti serviva per risolvere ... Prego.

Raul_1706
17-12-2014, 21:04
Oregon non volevo dire quello ma che ho fatto qualche modifica al codice e adesso funziona il programma :

#include <iostream>
#include <cstdlib>
using namespace std;


int main()
{
int x, dec, ott;
cout<<"Inserisci un numero ottale: ";
cin >> ott;



for (x=1,dec=0;ott;x*=8,ott/=10){
dec+=(ott%10)*x;

}
cout <<"Numero in decimale : " << dec << endl;
system("pause");
return 0;
}

oregon
17-12-2014, 21:11
Ok ciao

Loading