Konwersja liczby zapisanej jako string do systemu binarnego

Konwersja liczby zapisanej jako string do systemu binarnego
RA
  • Rejestracja:około 12 lat
  • Ostatnio:około 12 lat
  • Postów:1
0

Witam, zastanawiam się, jak możnaby było skonwertować string reprezentujący liczbę w systemie decymalnym na string reprezentujący tę liczbę w systemie binarnym.

Przykład:

string o zawartości "15" po przekonwertowaniu = string o zawartości "1111"

Chodzi o to, że muszę operować na liczbach wykraczających poza rozmiar typów dzieiętnych, mój program musi obsłużyć liczby do 2^31, tak więc sądzę, że należy to zrobić na stringach. A może jest jakiś inny sposób? Z góry dziękuję za pomoc.

UT
  • Rejestracja:ponad 12 lat
  • Ostatnio:prawie 12 lat
0
KR
  • Rejestracja:prawie 14 lat
  • Ostatnio:prawie 3 lata
  • Postów:353
0

2^31 = 2147483648
unsigned int max = 4294967295
Malo?

MA
  • Rejestracja:około 12 lat
  • Ostatnio:prawie 12 lat
  • Postów:25
0
Utermiko napisał(a):

BigInteger http://msdn.microsoft.com/en-US/library/system.numerics.biginteger.aspx

Ale to chyba do .NET a jest?

A ja mam pytanie bo mówisz że masz do obsłużenia liczby 2^31 a to przecież jest max. wartość 32-bitowej zmiennej ze znakiem (chyba) :D to znaczy że zmieścisz się w zwykłej zmiennej:D

DA
No chyba jednak jest "do .NET".
MA
^up ???? nie rozumiem?
MarekR22
Moderator C/C++
  • Rejestracja:około 17 lat
  • Ostatnio:12 minut
0
radmack napisał(a):

Chodzi o to, że muszę operować na liczbach wykraczających poza rozmiar typów dziesiętnych, mój program musi obsłużyć liczby do 231
Pokaż mi komputer, który pracuje na systemie dziesiętnym. Zwykły int to przecież liczby z zakresu od -2^^31
do 231-1. Ten wątek to jakieś WTF po prostu strasznie przekomponowujesz.

To jest proste: wczytujesz liczbę do zwykłej zmiennej typu int, a potem sprawdzasz kolejne jej bity i na tej podstawie budujesz napis. Jak poszukasz to na forum znajdziesz gotowca.


Jeśli chcesz pomocy, NIE pisz na priva, ale zadaj dobre pytanie na forum.
edytowany 3x, ostatnio: MarekR22
vpiotr
  • Rejestracja:ponad 13 lat
  • Ostatnio:prawie 3 lata
0

Druga część zadania: (int-to-bit_string)
http://www.cplusplus.com/forum/general/10898/

Endrju
  • Rejestracja:około 22 lata
  • Ostatnio:ponad rok
0

Dlaczego nie po prostu std::bitset?

Kopiuj
#include <iostream>
#include <bitset>
 
int main() {
  int x = 1234;
  
  std::bitset<32> wtf(x);
  
  std::cout << wtf.to_string();
  
  return 0;
}

http://ideone.com/fObZDW


"(...) otherwise, the behavior is undefined".

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.