Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- class ExchangeBits
- {
- static void Main(string[] args)
- {
- int intUserNumber = 0;
- Console.WriteLine("Please enter an integer number (n) for \"Exchange Bits\" program:");
- intUserNumber = int.Parse(Console.ReadLine());
- Console.WriteLine("The binary number is: {0}", (Convert.ToString(intUserNumber, 2).PadLeft(32, '0')));
- int position1 = 3;
- int position2 = 24;
- int position3 = 4;
- int position4 = 25;
- int position5 = 5;
- int position6 = 26;
- int userMove1 = intUserNumber >> position1; // move 3 bits to check if 0 or 1
- int userMove2 = intUserNumber >> position2; // move 24 bits to check if 0 or 1
- int userMove3 = intUserNumber >> position3;
- int userMove4 = intUserNumber >> position4;
- int userMove5 = intUserNumber >> position5;
- int userMove6 = intUserNumber >> position6;
- int changeNumb = 1;
- int checkingMask1 = userMove1 & changeNumb; // Determine if the number of 3rd bit is 0 or 1
- int mask1 = (checkingMask1 == 0) ? ~(1 << position2) : (1 << position2);
- int helpNumb1 = (checkingMask1 == 0) ? (intUserNumber & mask1) : (intUserNumber | mask1);
- //Console.WriteLine("The binary number is: {0}", (Convert.ToString(helpNumb1, 2).PadLeft(32, '0')));
- // Short if - else expression with results on the same sections
- int checkingMask2 = userMove2 & changeNumb; // Determine if the number of 24th bit is 0 or 1
- int mask2 = (checkingMask2 == 0) ? ~(1 << position1) : (1 << position1);
- int helpNumb2 = (checkingMask2 == 0) ? (intUserNumber & mask2) : (intUserNumber | mask2);
- //Console.WriteLine("The binary number is: {0}", (Convert.ToString(helpNumb2, 2).PadLeft(32, '0')));
- int checkingMask3 = userMove3 & changeNumb;
- int mask3 = (checkingMask3 == 0) ? ~(1 << position4) : (1 << position4);
- int helpNumb3 = (checkingMask3 == 0) ? (intUserNumber & mask3) : (intUserNumber | mask3);
- //Console.WriteLine("The binary number is: {0}", (Convert.ToString(helpNumb3, 2).PadLeft(32, '0')));
- int checkingMask4 = userMove4 & changeNumb;
- int mask4 = (checkingMask4 == 0) ? ~(1 << position3) : (1 << position3);
- int helpNumb4 = (checkingMask4 == 0) ? (intUserNumber & mask4) : (intUserNumber | mask4);
- //Console.WriteLine("The binary number is: {0}", (Convert.ToString(helpNumb4, 2).PadLeft(32, '0')));
- int checkingMask5 = userMove5 & changeNumb;
- int mask5 = (checkingMask5 == 0) ? ~(1 << position6) : (1 << position6);
- int helpNumb5 = (checkingMask5 == 0) ? (intUserNumber & mask5) : (intUserNumber | mask5);
- //Console.WriteLine("The binary number is: {0}", (Convert.ToString(helpNumb5, 2).PadLeft(32, '0')));
- int checkingMask6 = userMove6 & changeNumb;
- int mask6 = (checkingMask6 == 0) ? ~(1 << position5) : (1 << position5);
- int helpNumb6 = (checkingMask6 == 0) ? (intUserNumber & mask6) : (intUserNumber | mask6);
- //Console.WriteLine("The binary number is: {0}", (Convert.ToString(helpNumb6, 2).PadLeft(32, '0')));
- int result1 = intUserNumber ^ helpNumb1;
- int result2 = helpNumb2 ^ result1;
- int result3 = helpNumb3 ^ result2;
- int result4 = helpNumb4 ^ result3;
- int result5 = helpNumb5 ^ result4;
- int result6 = helpNumb6 ^ result5;
- Console.WriteLine("The binary number is: {0}", (Convert.ToString(result6, 2).PadLeft(32, '0')));
- Console.WriteLine("The decimal number is: {0}", result6);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement