Advertisement
Guest User

Untitled

a guest
Mar 27th, 2017
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.70 KB | None | 0 0
  1. unsigned najveci(unsigned x)
  2. {
  3.   unsigned velicina = sizeof(unsigned) * 8;
  4.  
  5.   /* Formira se maska 100000...0000000 */
  6.   unsigned maska = 1 << (velicina - 1);
  7.  
  8.   /* Rezultat se inicijalizuje vrednoscu 0 */
  9.   unsigned rezultat = 0;
  10.  
  11.   /* Promenljiva x se pomera u levo sve dok postoje jedinice u
  12.      njenoj binarnoj reprezentaciji (tj. sve dok je promenljiva x
  13.      razlicita od nule). */
  14.   for (; x != 0; x <<= 1) {
  15.     /* Za svaku jedinicu koja se koriscenjem maske detektuje na
  16.        poziciji najvece tezine u binarnoj reprezentaciji promenjive
  17.        x, potiskuje se jedna nova jedinicu sa leva u rezultat */
  18.     if (x & maska) {
  19.       rezultat >>= 1;
  20.       rezultat |= maska; //?
  21.     }
  22.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement