Home > C# > C# :: Gerade oder ungerade Zahl

C# :: Gerade oder ungerade Zahl

Die schnellste Möglichkeit zu erkennen, ob es sich bei einer Zahl um eine gerade oder ungerade Zahl handelt, führt über den letzen Bit einer Ganzzahl.

using System;

im Code am Beispiel einer Console:

int i = 0;

Console.WriteLine(“Bitte geben Sie eine Zahl ein:“);
i = int.Parse(Console.ReadLine());

if ((i & 1) == 1)
{
     Console.WriteLine(“Das ist eine UNGERADE Zahl“);
}
else
{
     Console.WriteLine(“Das ist eine GERADE Zahl“);
}

(i & 1) verknüpft nun alle Bits mit einer UND-Anweisung. Dabei wird jedes Bit mit mit dem dazugehörenden Bit von 1 kombiniert. Ist eins GLEICH 0, wird das entsprechende Bit auch auf 0 gesetzt:

   0110 0001
& 0000 0001
———-
   0000 0001

Damit sitzt das letzte Bit auf 1 und ist somit UNGERADE…

KategorienC# Tags:
  1. Bisher keine Kommentare
  1. Bisher keine Trackbacks

Spam protection by WP Captcha-Free