Oppure

Loading
01/02/09 9:22
sweetema
....bhè..ora mi da l'eseguibile(almeno qst!!!!)
però in output non esce il valore in base decimale,ma quello ke inserisco in base binaria..ho provato a fare qlk modifica...ma niente..non so proprio!!!!!:-?:-?:-?
aaa
01/02/09 9:46
theprogrammer
Postato originariamente da sweetema:

....bhè..ora mi da l'eseguibile(almeno qst!!!!)
però in output non esce il valore in base decimale,ma quello ke inserisco in base binaria..


Ma che vuoi dire?

Mostra un esempio di input e di output ...
aaa
01/02/09 9:47
sweetema
ANKE SE è UN PO BRUTTINO IL CODICE,PENSO DI AVER RISOLTO IL PROBLEMA
#include<iostream.h>
#include<stdlib.h>
#include<cmath>

using namespace std;


int total=0;
int x;


int main()
{
    cout<<"QUESTO PROGRAMMA CONVERTE I NUMERI DA BASE BINARIA A BASE DECIMALE\n\n\n";
    cout<<"INSERIRE IL NUMERO IN BASE BINARIA DI 5 CIFRE (dal bit 0 al bit 4) INSERENDO GLI SPAZI TRA UN NUMERO E L'ALTRO\n";


    for(int j=4;j>=0;j--)
    {
    	cin>>x;
    	x *=(int)pow(2.0,(double)j);
         total+=x;
    }

    cout<<"il numero in base decimale è "<<total<<endl;

    return 0;
}

CHE NE PENSI?AH,UN ULTIMO FAVORE,POTRESTI SPIEGARMI QUESTO TRATTO DI CODICE?(int)pow(2.0,(double)j)!!!!!!!!!GRAZIE 1000 PER L'AIUTO baci;)
aaa
01/02/09 9:55
theprogrammer
E' praticamente uguale a quello che ti avevo suggerito (e che funzionava anche se in modo diverso).

Alcune osservazioni:

- l'include di iostream in C++ deve essere

#include <iostream>

senza il .h

- e' meglio che le variabili siano locali al main; dichiarale quindi dentro e non fuori.

Cosa non capisci della scrittura della pow?
aaa
01/02/09 10:00
sweetema
OK..grazie xle osservazioni!!!!non capisco perchè x farmi dare l'eseguibile non posso scrivere direttamente x*=pow(2,j) ma devo scrivere x*=(int)pow(2.0,(double)j)......
aaa
01/02/09 10:08
theprogrammer
Postato originariamente da sweetema:

x*=pow(2,j) ma devo scrivere x*=(int)pow(2.0,(double)j)......


Perche' la funzione pow accetta due parametri double e restituisce un double.

Se i tipi dei parametri o il valore restituito sono diversi, allora devi operare i corretti cast.

Ti consiglio di studiare il C/C++ oltre a scrivere del codice. In particolare, studia cosa e', appunto, il

cast
aaa
01/02/09 10:13
sweetema
grazie
aaa