Лекция 11 - Побитови Операции

Линк към презентацията

Решения на задачите за побитови операции

Б клас

#include <stdio.h>

void print_bits(int n) {
  if(n > 0){
    print_bits(n >> 1);
    printf("%d", n % 2);
  }
}

int main() {
  print_bits(13);
  return 0;
}

Г клас

#include <stdio.h>

void print_bits(int n) {
  int res = 0;
  while(n > 0) {
    //res += n % 2;
    res = res + (n % 2);
    n = n >> 1;
    //n = n / 2;
    if(n > 0) {
      res *= 10;
    }
  }
  while(res > 0) {
    printf("%d", res % 10);
    res /= 10;
  }
  printf("\n");
}


int main() {
  print_bits(13); // 1101
  return 0;
}