Ho provato ha fare un algoritmo in c ++ che mi risolvesse il problema di convertire un numero da una base qualunque a quella decimale, ma c'è qualche errore nella formula. qualcuno mi può aiutare? Grazie.
ecco l'algoritmo:
#include<iostream>
#include<stdlib.h>
#include<math.h>
#define n 8
using namespace std;
//variabili
int b;
typedef int vettore [n];
int m;
//base&bit
void base_bit(vettore V)
{
cout<<"inserisci di quante cifre è composto il numero\n";
cin>>m;
cout<<"inserisci la base del numero da convertire\n";
cin>>b;
}
//inserimento cifre
void inserisci_cifre(vettore V)
{
register int i;
for(i=0;i<m;i++)
{
cout<<"inserisci cifra nella pos. "<<i<<"da dx:\n";
cin>>V[i];
}
}
//conversione
void conversione(vettore V)
{
register int i,sommatoria;
for(i=0;i<m;i++)
{
sommatoria += V[i]*(b^i);
}
cout<<"il num in decimale:"<<sommatoria<<"\n" ;
}
int main()
{
vettore V;
//base&bit
base_bit(V);
//inseisci cifre
inserisci_cifre(V);
//conversione
conversione(V);
system("PAUSE");
}