Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //19.10 lab 3
- void prob1()
- {
- // se da un x. sa se verif daca x se scrie ca 2 la o putere si sa se afis puterea
- int x,a,k=0;
- scanf("%d",&x);
- a=x-1;
- if ((x & a) == 0)
- printf("Este putere a lui 2.");
- else
- printf("Nu este putere a lui 2.");
- while (x>>=1)
- k++;
- printf("\n puterea este... %d",k);
- }
- void prob2()
- {
- // cati biti de 1 are numarul
- int x,c=0;
- scanf("%d",&x);
- while (x)
- {
- if ((x&1)==1)
- c++;
- x>>=1;
- }
- printf("%d",c);
- }
- void problema3Lab3()
- {
- int x,y,n,p; // p - pozitia p din x; n - ultimii n biti din y
- printf("Introduceti valorea pentru x si y, in ordine. Apoi introduceti si p - pozitia din x si n - ultimii biti din y. \n");
- printf("\nx si y \n");
- scanf("%d %d", &x,&y);
- printf("\np si n \n");
- scanf("%d %d", &p, &n);
- int div=pow(2,n);
- int nBits=y%div;
- nBits = nBits << p;
- x = x + nBits; // GRESIT, trebuiau setati nu copiati!
- printf("Valorea noului x este... %d", x);
- }
Add Comment
Please, Sign In to add comment