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

'Kalkulator bitowy' - operacje na bitach

Object Storage Arubacloud
0 głosów
2,584 wizyt
pytanie zadane 16 listopada 2017 w Java przez Lupusvulpes Nowicjusz (140 p.)

Chciałbym napisać program który wypisze na ekran wartości ciągu bitów danej liczby jako wyliczone odpowiednie potęgi dwójki albo zera. Tj. coś takiego: 

Scanner sc = new Scanner(System.in);
        byte a = sc.nextByte();

Uruchamiam program, podaje np. 5 a program wypisuje

0

4

0

1

Jak można zrobić coś takiego ?

1 odpowiedź

0 głosów
odpowiedź 16 listopada 2017 przez rafal.budzis Szeryf (85,260 p.)
Wszystko robisz w pętli. Program powinien posiadać 3 zmienne.

Pierwszą zmienna mnożysz przez dwa będzie oba wyświetlana jeśli bit będzie wskazywał dodatnia wartość.

drugą zmienną jest liczba którą chcesz wyświetlać najłatwiej co przejście pętli wykonywać przesunięcie bitowe co będzie przesuwało bit który chcemy odczytać na pierwszą pozycje. Następnie wykonujemy logiczne AND z liczbą 1 aby pozbyć się wszystkich bitów z wyjątkiem pierwszego. ostatnim krokiem będzie sprawdzenie czy liczba powstała z tych działań równa się 1 czy 0 i wyświetlić odpowiednią wartość.
1
komentarz 17 listopada 2017 przez Mateusz51 Nałogowiec (28,180 p.)
Nie potrzebujesz zmiennej którą wyświetlasz i sprawdzać czy to jest jeden czy zero. Wystarczy że masz maske bitową na początku 0000_0001 a potem tą maskę przesuwasz o jeden w lewo. I AND z taką maską daje Ci potęgę dwójki którą chcesz aktualnie wyświetlić.
komentarz 17 listopada 2017 przez rafal.budzis Szeryf (85,260 p.)

Racja @Mateusz51 będzie łatwiej nie pomyślałem :) +

Podobne pytania

0 głosów
1 odpowiedź 332 wizyt
pytanie zadane 14 listopada 2017 w C i C++ przez panstudent Nowicjusz (190 p.)
0 głosów
4 odpowiedzi 1,061 wizyt
pytanie zadane 5 października 2018 w Java przez Potopiec Obywatel (1,550 p.)

92,555 zapytań

141,403 odpowiedzi

319,554 komentarzy

61,939 pasjonatów

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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...