[C++] System ósemkowy (oktalny) 'miesza się' z binarnym


(Quentin) #1

Witam :slight_smile:

Czytam Symfonię C++ i napotkałem się na cytat:

No właśnie, ale kiedy czytałem ćwiczenia do działu o tych systemach napotkałem dziwny fragment:

No ale przecież np. 010, 001 czy 011 to liczby w zapisie ósemkowym - na początku jest cyfra 0. Błąd w książce :?: Nie powinno się dodawać na początku tych zer :?:

PS. Skoro jesteśmy przy systemach liczenia, to jest też takie ćwiczenie o treści:

Skoro można zapisać w systemie szesnastkowym i ósemkowym to i w binarnym można - zgadza się :?: ( pytanie banalne, ale chcę się upewnić :stuck_out_tongue: )...


(Sawyer47) #2

Jeżeli autor pisze, że to binarnie to masz to interpretować jako liczby w zapisie dwójkowym. Przecież pierwsza cyfra ma dwa zera na początku, więc tu raczej chodziło o czytelność i dlatego autor dopisał na początku zera.

I nie, nie ma w C++ stałych dosłownych w zapisie dwójkowym. W niektórych językach możliwy jest zapis np. 0b10 , ale nie w C++.

Radzę więcej czasu poświęcić uważnej lekturze Symfonii, a nie pisaniu postów na forum.


(system) #3

O systemie binarnym autor piszę bez odnoszenia się do konkretnego języka.

O systemie ósemkowym piszę w kontekście C/C++.

Lepiej zmień książkę na inną. tu wyjaśniam czemu.