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

Przelicznik Cyfry binarnej na dziesiętną.

Konkurs Mistrz Programowania
0 głosów
350 wizyt
pytanie zadane 21 lutego 2016 w C i C++ przez tarnasm Gaduła (3,030 p.)

Witam,

Prosiłbym o pomoc w zrozumieniu działania tej funkji.

int binary_decimal(int n) /* Function to convert binary to decimal.*/
{
    int decimal=0, i=0, rem;
    while (n!=0)
    {
        rem = n%10;
        n/=10;
        decimal += rem*pow(2,i);
        ++i;
    }
    return decimal;
}

nie dokońca rozumiem skąd ten "%" przy 10. 

i co oznacz ten zapis: 

 decimal += rem*pow(2,i);

Pozdrawiam

2 odpowiedzi

0 głosów
odpowiedź 21 lutego 2016 przez Ehlert Ekspert (215,070 p.)
Ja nie rozumiem jak wygląda n w systemie binarnym.

% to modulo 3%2 = 1
komentarz 21 lutego 2016 przez Radfler VIP (101,030 p.)
Dokładnie, ja tak samo nie rozumiem...

@tarnasm Logiczne by było, gdybyś chciał zmienić string na int albo odwrotnie. Ale int na int? To nie ma sensu...
komentarz 21 lutego 2016 przez tarnasm Gaduła (3,030 p.)
Ta funkjca zamienia liczbę binarną na dziesiętną. Stąd int na int.
komentarz 21 lutego 2016 przez Ehlert Ekspert (215,070 p.)

Nie rozumiesz czegoś. Kompilatory C++ posługują się dla typów float, double int itp. system dziesiętnym. Stąd zapis:

int x = 1000000;

to milion, a nie 64.

0 głosów
odpowiedź 21 lutego 2016 przez szymi666 Bywalec (2,020 p.)
decimal += rem*pow(2,i); oznacza to ze decimal jest równe rem razy 2 do potęgi i

Podobne pytania

+1 głos
1 odpowiedź 673 wizyt
0 głosów
1 odpowiedź 835 wizyt
pytanie zadane 9 października 2020 w C# przez Igorek Mądrala (6,290 p.)
0 głosów
1 odpowiedź 774 wizyt
pytanie zadane 28 grudnia 2019 w C# przez mZq Nowicjusz (150 p.)

93,657 zapytań

142,577 odpowiedzi

323,100 komentarzy

63,174 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
...