C# :: Gerade oder ungerade Zahl
C# 06 November, 2008Die 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…
Hinterlasse einen Kommentar
Du musst eingeloggt sein um einen Kommentar zu schreiben.
mherbert
Letzte Kommentare