Advertisement
Crackbone

dv5z5

Apr 18th, 2021
949
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.39 KB | None | 0 0
  1. /*5. Napisati funkciju koja setira sve bitove jednog bajta u danom int broju. Broj i redni
  2. broj bajta su parametri funkcije.
  3. Primjer: Za broj 200 čiji je binarni zapis 11001000 i redni broj bajta 2, novi binarni
  4. broj je 1111111111001000, što je broj 65480.*/
  5.  
  6.  
  7. #define _CRT_SECURE_NO_WARNINGS
  8.  
  9. #include<stdio.h>
  10.  
  11. int dTb(int);
  12. void bit_set(int*, int);
  13. void bite_set(int*, int);
  14.  
  15. int main()
  16. {
  17.     int number, bin_number, k;
  18.     printf("Unesi broj:\n");
  19.     scanf(" %d", &number);
  20.     printf("\n");
  21.     bin_number = dTb(number);
  22.     printf("Binarni broj je: %d", bin_number);
  23.     printf("\nKoji bajt zelis setirati(0ti je prvi,...):\n");
  24.     scanf(" %d", &k);
  25.     bite_set(&number, k);
  26.     //Ovo sve radi za male brojeve, ali ne i za ovo; jer kao sta se vidi ovo dole, jer vjerojatno udre neki cealing, jebi se ti sa tim, skuzi sta ne radi .D
  27.     printf(" %d", 10000000000 * 10);
  28.     bin_number = dTb(number);
  29.     printf("\nBinarni broj je: %d", bin_number);
  30.     getchar();
  31.     getchar();
  32.     return 1;
  33. }
  34.  
  35. unsigned int dTb(int number)
  36. {
  37.     unsigned int bin_numb = 0,temp=1;
  38.     int remain;
  39.     while (number > 0)
  40.     {
  41.         remain = number % 2;
  42.         number = number / 2;
  43.         bin_numb = bin_numb + remain * temp;
  44.         temp = temp * 10;
  45.  
  46.     }
  47.  
  48.  
  49.     return bin_numb;
  50. }
  51.  
  52. void bit_set(int *number, int k)
  53. {
  54.     *number |= 1 << k;
  55. }
  56.  
  57. void bite_set(int *number, int k)
  58. {
  59.     int i = 0;
  60.     while (i < 8)
  61.     {
  62.  
  63.         bit_set(number, (8 * k) + i);
  64.  
  65.         i++;
  66.     }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement