Advertisement
icatalin

12.10.2017 continuare

Oct 19th, 2017
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.73 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void numarParitate (int x)
  5. {
  6.     //verificare daca un numar e par sau impar
  7.  
  8.     if (x&1)
  9.         printf("x este impar");
  10.     else
  11.         printf("x este par");
  12. }
  13.  
  14. void problema1Lab3 (int x)
  15. {
  16.     //Afisarea reprezentarii pe biti a unui numar.
  17.  
  18.     int a=1;
  19.  
  20.         a=a<<8; // pe cati biti se face reprezentarea.
  21.  
  22.         while(a)
  23.         {
  24.             if (x&a)
  25.                 printf("%d",1);
  26.             else
  27.                 printf("%d",0);
  28.  
  29.             a=a>>1;
  30.         }
  31. }
  32.  
  33. void problema2Lab3 (int x)
  34. { // n - bit, x - nr
  35.     int n;
  36.     printf("Introduceti bitul n. \n");
  37.     scanf("%d",&n);
  38.  
  39. /*    //punctul a: Sa se afiseze bitul n din x
  40.  
  41.     printf("Introduceti n. \n Sa se afiseze bitul n\n");
  42.     scanf("%d",&n);
  43.  
  44.     int xA=x;
  45.  
  46.     xA=xA>>n;
  47.     printf("\n a) Sa se afiseze bitul n\n"
  48.     printf("%d", xA&1);
  49.  
  50.     // punctul b): numărul x în care se seteaza bitul n
  51.  
  52.     int xB=x;
  53.     printf("b) Se afis. nr x in care se seteaza bitul n. \n");
  54.  
  55.     int bitB=1;
  56.  
  57.     bitB = bitB  << n;
  58.  
  59.     xB = xB | bitB;
  60.  
  61.     printf("%d \n",xB);
  62.  */
  63.     // punctul c): numărul x în care se șterge bitul n
  64.  
  65. /*
  66.     int xC=x;
  67.  
  68.     printf("punctul c): numarul x in care se sterge bitul n \n");
  69.  
  70.     int bitC=1;
  71.  
  72.     bitC = bitC << n;
  73.  
  74.  // metoda 1  if ((xC & bitC) == bitC)
  75.  //    xC = xC - bitC;
  76.  
  77.     xC = xC & (~bitC);
  78.  
  79.     printf("%d \n",xC);
  80.  
  81.  */
  82.     // punctul d): numărul x în care se seteaza bitul n
  83.  
  84.     int xD=x;
  85.  
  86.     printf("punctul d): numarul x in care se seteaza bitul n \n");
  87.  
  88.     int bitD=1;
  89.  
  90.     bitD = bitD << n;
  91.  
  92.     xD = xD ^ bitD;
  93.  
  94.     printf("%d \n",xD);
  95. }
  96.  
  97. int main()
  98. {
  99.     problema2Lab3(10);
  100.  
  101.     return 0;
  102. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement