Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <sstream>
- using namespace std;
- struct binary_t {
- string bin;
- int bits;
- };
- binary_t binprint (unsigned int number) {
- int bin;
- binary_t binary;
- binary.bits=0;
- stringstream out;
- do {
- bin = number%2;
- number/=2;
- binary.bits++;
- out << bin;
- binary.bin=out.str()+binary.bin;
- out.str("");
- } while (number>0);
- return binary;
- }
- int main()
- {
- char response;
- union {
- unsigned int a;
- float b;
- char c;
- } blarg;
- do {
- cout << "a) unsigned int\nb) float\nc) char\nInput as:";
- cin >> response;
- cin.ignore(255,'\n');
- } while (response!='a'&&response!='b'&&response!='c');
- cout << "Input:";
- switch (response) {
- case 'a':
- cin >> blarg.a;
- break;
- case 'b':
- cin >> blarg.b;
- break;
- case 'c':
- cin >> blarg.c;
- break;
- }
- binary_t binary = binprint(blarg.a);
- cout << "unsigned int:" << blarg.a <<endl;
- cout << "float:" << blarg.b <<endl;
- cout << "char:" << blarg.c <<endl;
- cout << "binary:" << binary.bin <<endl;
- cout << "number of significant bits:" << binary.bits <<endl;
- cin.ignore(255, '\n');
- cin.get();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement