Binary to Decimal

G

Guest

Should the following algorithm produce the binary equivalent of an inputed
decimal value?

----------
cout << "Decimal value: ";
cin >> Decimal;
Binary = 0;
Remainder = Decimal;
for(Power = 4; Power = -1; Power--) {
Remainder = Decimal - (pow(2,Power));
if(Remainder < 0) {
Binary = Binary * 10;
Remainder = Decimal;
}
if(Remainder >=0) {
Binary = ((Binary * 10) + 1);
Decimal = Remainder;
}
}
cout << "Binary value: " << Binary << "\n";
system("Pause");
break;
----------

Can anyone suggest any other methods that does not implement built-in
functions?

Please and thankyou.
 
H

Hendrik Schober

lmh86 said:
[...]
Can anyone suggest any other methods that does not implement built-in
functions?

This sounds like some homework, so I will
hint you into some direction, but won't
post code.
When you have this:
int i;
std::cin >> i;
the value ist stored in 'i' in binary form.
(That's the only way the computer knows.)
If you look at the lowest bit of 'i' (by
masking off the others) you know it's value.
After that, you can shift 'i's content to
the right one position and thus inspect the
next bit at the same position.
Feel free to ask if anything in this is not
clear.
Please and thankyou.


Schobi

--
(e-mail address removed) is never read
I'm Schobi at suespammers dot org

"The presence of those seeking the truth is infinitely
to be prefered to those thinking they've found it."
Terry Pratchett
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top