Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

konverzija brojeva - hitno mi je potrebna pomoc

[es] :: C/C++ programiranje :: konverzija brojeva - hitno mi je potrebna pomoc

[ Pregleda: 4004 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

velkod
Veljko Davidovic
Beograd

Član broj: 13689
Poruke: 251
*.beotel.net.



Profil

icon konverzija brojeva - hitno mi je potrebna pomoc24.10.2004. u 17:06 - pre 206 meseci
Sutra imam ispit iz c++ pa mi je potreban primer iz konverzije brojeva iz recimo binarnog u dekadni. Takodje su mi potrebne i ostale kombinacije. Znam kako ide konverzija odprilike ali mnogo bi mi pomoglo da vidim konkretno kako treba da izgleda u c++. Pozdrav.
 
Odgovor na temu

Ivan Dimkovic

Administrator
Član broj: 13
Poruke: 16206
*.dip.t-dialin.net.



+7005 Profil

icon Re: konverzija brojeva - hitno mi je potrebna pomoc24.10.2004. u 17:23 - pre 206 meseci
Ne znam sta hoces konkretno da radis - ako se radi o konzolnom upitu, onda iz binarnog u dekadni mozes da uradis konverziju vrlo prosto:

Code:

int konvertuj_me(char *binarni_broj, int duzina) {

  int broj=0, n;

  for(n=0;n<duzina;n++) {
    broj += (binarni_broj[n]=='1') ? (1<<(duzina-n-1)) : 0;
  }
  return broj;
}

DigiCortex (ex. SpikeFun) - Cortical Neural Network Simulator:
http://www.digicortex.net/node/1 Videos: http://www.digicortex.net/node/17 Gallery: http://www.digicortex.net/node/25
PowerMonkey - Redyce CPU Power Waste and gain performance! - https://github.com/psyq321/PowerMonkey
 
Odgovor na temu

blaza
n/a

Član broj: 961
Poruke: 743
*.vdial.verat.net.



+3 Profil

icon Re: konverzija brojeva - hitno mi je potrebna pomoc24.10.2004. u 19:48 - pre 206 meseci
Zapis binarnog broja: char binarni_broj[33];
Svaki bit zauzima jedan karakter; '0' je 0; '1' je 1; bilo koji drugi karakter oznacava kraj; MSB se pamti u karakteru sa indeksom 0
Broj moze imati maksimalno 32 znacajne cifre
Code:

unsigned int bin_u_dek(char* bb){
    unsigned int j, rezultat = 0, i = 0;
    for(; !(((j = (bb[i] ^ 0x30)) & 0xfe)  || (i & 0x20)); i++)
        rezultat += rezultat + j;
    return rezultat;
}

char* dek_u_bin(unsigned int b){
    unsigned int i, j = 31, k;
    for(; b < (1 << j); j--);
    static char rezultat[33];
    for(i = ++j; j; j--){
        if(k = (b >= 1 << (j - 1)))
            b -= 1 << (j - 1);
        rezultat[i - j] = 48 + ((k) ? 1 : 0);
    }
    rezultat[i] = 0;
    return rezultat;   
}


O_o
 
Odgovor na temu

[es] :: C/C++ programiranje :: konverzija brojeva - hitno mi je potrebna pomoc

[ Pregleda: 4004 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.