using System; namespace inversionBits { class MainClass { public static void Main (string[] args) { Console.WriteLine ("Saisissez un entier : "); ushort x = ushort.Parse (Console.ReadLine ()); ushort maskFirst = 1<<(sizeof(ushort)*8 - 1); ushort maskLast = 1; ushort result = 0; for (int i = sizeof(ushort)*8 - 1; i>0 ; i-=2) { ushort firstBit = (ushort)(x&maskFirst); ushort LastBit = (ushort)(x&maskLast); firstBit >>= i; LastBit <<= i; result = (ushort)(result | firstBit | LastBit); maskFirst>>=1; maskLast<<=1; } Console.WriteLine("Après inversion de l'ordre des bits on a " + result); } } }