File: Stare vježbe/vjezbe13/82__bitcount.c
/* 82__bitcount.c Uvode se operatori nad bitovima (bitwise operatori). ----- Za uneseni pozitivni broj ispisuje se koliko on ima jedinica u binarnom zapisu. */ int main() { int x, i, b=0, br_znam=0; int znam[32]={0}; scanf("%d", &x); while(x!=0) { /* & predstavlja logicki AND operator koji se primjenjuje na svakom bitu posebno -> x & 1 provjerava da li je posljednja binarna znamenka broja x jednaka 1 */ if (znam[br_znam++]=x & 1) b++; /* x>>=1 <--> x=x>>1 ">>" predstavlja tzv. desni-shift operator */ x>>=1; } printf("Broj jedinica u binarnom zapisu: %d\n", b ); for(i=br_znam-1; i>=0 ; i--) return 0; }
|