Advertisement
Teodor92

BitExchangeTwo

Oct 9th, 2012
575
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.27 KB | None | 0 0
  1. /* * Write a program that exchanges bits {p, p+1, …, p+k-1)
  2.  * with bits {q, q+1, …, q+k-1} of
  3.  * given 32-bit unsigned integer.
  4.  */
  5.  
  6. using System;
  7. using System.Collections.Generic;
  8.  
  9. class HarderBitExchange
  10. {
  11.     static void Main()
  12.     {
  13.         int number = 2147450880;
  14.         byte p = 2;
  15.         byte q = 20;
  16.         byte k = 4;
  17.         // turning the number in bin system
  18.         List<int> numberInBin = new List<int>();
  19.         while (true)
  20.         {
  21.             if (number == 0)
  22.             {
  23.                 break;
  24.             }
  25.             numberInBin.Add(number % 2);
  26.             number = number / 2;
  27.         }
  28.         // Printing the list
  29.         for (int i = 0; i < numberInBin.Count; i++)
  30.         {
  31.             Console.Write(numberInBin[i]);
  32.         }
  33.         Console.WriteLine();
  34.         //Making the change
  35.         for (int i = 0; i < k; i++)
  36.         {
  37.             int temp = 0;
  38.             temp = numberInBin[p];
  39.             numberInBin[p] = numberInBin[q];
  40.             numberInBin[q] = temp;
  41.             p++;
  42.             q++;
  43.         }
  44.         // Printing the edited list
  45.         for (int i = 0; i < numberInBin.Count; i++)
  46.         {
  47.             Console.Write(numberInBin[i]);
  48.         }
  49.         Console.WriteLine();
  50.     }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement