Advertisement
Guest User

Untitled

a guest
Jan 27th, 2020
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. #include <stdio.h>
  2. int nBi(int num);
  3. int potenza(int n, int b);
  4. int potenza(int n, int b){
  5. int i,a,j;
  6. a=1;
  7. for(i=1;i<=b;i++){
  8. a=a*n;
  9. }
  10. return a;
  11. }
  12. int nBi(int num){
  13. int i;
  14. while(num!=1){
  15. num=num/2;
  16. i++;
  17. }
  18. return i+1;
  19. }
  20. main(){
  21. int num,pos,n,y,i,a,o,s[10],nBit,m[10],sum;
  22. printf("Inserisci un numero: ");
  23. scanf("%d",&num);
  24. printf("Inserisci un pos: ");
  25. scanf("%d",&pos);
  26. printf("Inserisci per quanti num: ");
  27. scanf("%d",&n);
  28. printf("Inserisci un pos y: ");
  29. scanf("%d",&y);
  30. nBit=nBi(num);
  31. for(i=nBit;i>=0;i--){
  32. a=num%2;
  33. num=num/2;
  34. s[i]=a;
  35. }
  36. o=nBit;
  37. for(i=0;i<=nBit;i++){
  38. s[i]=s[o--];
  39. }
  40. for(i=0;i<=nBit;i++){
  41. if(i==(nBit-y)){
  42. while(a!=n){
  43. s[i]=s[nBit-pos];
  44. a++;
  45. pos--;
  46. i++;
  47. }
  48. }
  49. }
  50. printf("Ecco i bit modificati: ");
  51. for(i=0;i<=nBit;i++){
  52. printf("%d",s[i]);
  53. }
  54. printf("\n");
  55. printf("Ecco la variabile con i bit modificati: ");
  56. for(i=0;i<=nBit;i++){
  57. sum=sum+s[i]*potenza(2,nBit-i);
  58. }
  59. printf("%d",sum);
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement