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

Konwersja dziesiętna na dwójkową

Cloud VPS
0 głosów
699 wizyt
pytanie zadane 15 maja 2020 w JavaScript przez Kubunio Początkujący (270 p.)

Witam, nie mogę sobie poradzić z konwersją dziesiętną na binarną, funkcja wyświetla nadal liczbę dziesiętna zamiast dwójkowej.

function bin() {

            var liczba = prompt('podaj liczbę naturalną: ');

            if (liczba != null) {

                alert(liczba.toString(2));

            } else {

                alert('Nieprawidłowa liczba!');

            }

        }

 

komentarz 15 maja 2020 przez soccerkid Początkujący (440 p.)
Nie możesz sobie poradzić dlatego, że wywołujesz toString() dla typu 'string' (zmienna liczba jest takiego typu). Po wpisaniu przez użytkownika np. liczby 2 typ zmiennej liczba to string co możesz sprawdzić np. funkcją typeof(liczba). Natomiast metoda toString() dla typu Number pozwala podać w nawiasach podstawę systemu, która zostanie użyta do reprezentacji danej liczby. Dlatego musisz skonwertować zmienną liczba, która jest typu 'string' na typ 'number'. Spróbuj dodać znak + przed okienkiem prompt czyli:

 var liczba = +prompt('podaj liczbę naturalną: ');

Dzięki temu skonwertujesz zmienną liczba z typu string na typ number.

2 odpowiedzi

+2 głosów
odpowiedź 15 maja 2020 przez Paweł Nąckiewicz Nałogowiec (48,990 p.)

Bo pobeirasz stringa. Musisz najpierw stringa przekonwertować na inta a doipiero potem tego inta na binarke.

https://developer.mozilla.org/pl/docs/Web/JavaScript/Referencje/Obiekty/parseInt

+1 głos
odpowiedź 15 maja 2020 przez ScriptyChris Mędrzec (190,190 p.)

Hmm, prompt zwraca string, więc liczba.toString jest funkcją korzystającą z prototypu String, która nie przyjmuje parametru określającego podstawę reprezentacji liczby. Zrzutuj zmienną liczba na liczbę, wtedy będzie użyta "właściwa" metoda toString (z prototypu Number), która powinna zwrócić oczekiwany wynik.

Podobne pytania

0 głosów
0 odpowiedzi 642 wizyt
0 głosów
1 odpowiedź 1,021 wizyt
0 głosów
1 odpowiedź 3,205 wizyt

93,487 zapytań

142,423 odpowiedzi

322,773 komentarzy

62,908 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

Kursy INF.02 i INF.03
...