• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Mógłby mnie ktoś natchnąć jak w prosty sposób napisać przeliczanie z binarnego na szesnastkowy w C++

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
652 wizyt
pytanie zadane 11 stycznia 2016 w C i C++ przez Inferius Początkujący (440 p.)
Tak jak w temacie mam napisane program przeliczajacy z binarnego na dziesietny i potrzebuje jeszcze z binarnego na szesnastkowy i nie mam pojęcia jak zacząc czy musz 16 przyporzadkowań napisac ze tam 1111-F czy jak : )

3 odpowiedzi

+1 głos
odpowiedź 11 stycznia 2016 przez Mateusz Tocha Bywalec (2,560 p.)
Wszystko zależy jak ma być zapisana ta liczba binarna , czy jako string, czy jako int czy jeszcze cos innego, możesz zastosować.

Tak intuicyjnie to możesz rozpisać tablice 0-9 oraz A-F, a następnie jak masz powiedzmy liczbę 0x9E to zamieniasz 9-> 1001 a E-> 1110 czyli razem 10011110b <-> 0x9E.

binarnego na dziesiętny to najprościej jeżeli byś sprawdzał na której pozycji jest "1" i dodawała wegdług wag.

np 0110b =0*2^0+1*2^1+1*2^2+0*2^3 , teraz kwestia czy ta liczba 0110b będzie stringem czy intem czy może unią.

Pozdrawiam
komentarz 11 stycznia 2016 przez Inferius Początkujący (440 p.)
no dobrze a jeśli by była stringiem i napisze binarnie np 01010101 to mam 7 szufladek zajętych : )

i teraz musiałbym dać 16 if-ów sprawdzających czy jak / i wg pierwsze 4 cyfry znajduja się w szufladkach 0 1 2 3 więc jak je wczytać

 

Sposób stworzenia programu obojętny : )
komentarz 11 stycznia 2016 przez Mateusz Tocha Bywalec (2,560 p.)
to napisz jaki zakres liczbowy ma mieć ten program
komentarz 11 stycznia 2016 przez Inferius Początkujący (440 p.)
do 128 : ) dajmy : )
0 głosów
odpowiedź 11 stycznia 2016 przez notabigthreat Mądrala (7,060 p.)
dwójkowy -> szesnastkowy - prosta, lecz trudno dająca się uogólnić metoda:
Dopisz na początek tyle zer, żeby liczba cyfr dwójkowych była podzielna przez 4. Następnie (4 cyfry dwójkowe to 1 cyfra szesnastkowa) przetwarzaj cyfry po 4, uzyskując wynik cyfra po cyfrze.
0 głosów
odpowiedź 11 stycznia 2016 przez radek024 Szeryf (77,160 p.)

Skoro już masz program przeliczający na liczby dziesiętne, możesz wykorzystać komendę hex, która automatycznie przetłumaczy liczbę na szesnastkową. Wygląda to tak:
 

// Example program
#include <iostream>
#include <string>
using namespace std;

int main()
{
 int a=15;
 cout<<hex<<a<<endl;
}

Rezultatem będzie liczba f(hex) ;)

Podobne pytania

0 głosów
5 odpowiedzi 733 wizyt
pytanie zadane 29 stycznia 2016 w C i C++ przez DragonCoder Nałogowiec (36,500 p.)
+1 głos
2 odpowiedzi 575 wizyt
+1 głos
3 odpowiedzi 513 wizyt

93,185 zapytań

142,198 odpowiedzi

322,006 komentarzy

62,514 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2127p. - dia-Chann
  2. 2092p. - Łukasz Piwowar
  3. 2079p. - Łukasz Eckert
  4. 2037p. - Tomasz Bielak
  5. 2006p. - rucin93
  6. 2005p. - Łukasz Siedlecki
  7. 1964p. - CC PL
  8. 1835p. - Adrian Wieprzkowicz
  9. 1785p. - Michal Drewniak
  10. 1744p. - rafalszastok
  11. 1684p. - Mikbac
  12. 1624p. - Anonim 3619784
  13. 1520p. - Marcin Putra
  14. 1480p. - ssynowiec
  15. 1365p. - Dawid128
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...