Top.Mail.Ru
Ответы

Перевод из десятичной в двоичную.

Я как бы сделал перевод в другую систему счисления, но хотелось бы увидеть более эстетичный и простой вариант перевода в двоичную, кто сможет показать хороший пример - пишите.

12345678910111213141516171819202122232425262728293031323334
 void convertToBinarySystem() {  
		setlocale(LC_ALL, "rus");  
		cout << "Введите число, которое хотите перевести в двоичную систему" << endl;  
		int a;  
		double b;  
		int q;  
		double doubleres;  
		cin >> a;  
		int h = a;  
		b = a;  
		int res;  
		int arr[10];  
		for (int i = 0; i < 999; i++) {   
			res = a / 2;  
			a = res;  
			doubleres = b / 2;  
			if (res == doubleres) {  
				arr[i] = 0;  
			}  
			else {  
				arr[i] = 1;  
			}  
			b = res;  
			if (res == 0) {  
				q = i;  
				break;  
			}  
  
		}  
		cout << h << " в двоичной системе : ";  
		for(q; q >= 0; q--) {  
			cout << arr[q];  
		}  
	} 
По дате
По рейтингу
Аватар пользователя
Новичок
12345678910
 std::string s;
while (a > 0) {
  s += '0' + (a & 1);
  a >>= 1;
}
std::reverse(s.begin(), s.end()); 
if (s.empty()) { 
  s = '0'; 
}
cout << s; 
Аватар пользователя
Мудрец

#include <iostream>
#include <bitset> //один косяк - разрядность указывается заранее
int main()
{
int a; std::cin >> a; std::cout << std::bitset<16>(a);
}

Аватар пользователя
Мудрец

С помощью вот такой программы можно переводить числа из одной СС в другую