Ungerade bzw gerade Zahlen darstellen

Hallo,
fange gerade an mit C+± Programmierung und habe die Aufgabe, ein Programm zu entwerfen, wo später ausgerechnet und verglichen werden soll, ob die Zahl gerade oder ungerade ist! Wie macht man das??

Danke schonmal

P.S. Achso, kann man nach einem „else“ gleich ein „if“ folgen?

fange gerade an mit C+± Programmierung und habe die Aufgabe,
ein Programm zu entwerfen, wo später ausgerechnet und
verglichen werden soll, ob die Zahl gerade oder ungerade ist!
Wie macht man das??

Mathematisch: modulo 2
Integer-Spass: &1

P.S. Achso, kann man nach einem „else“ gleich ein „if“ folgen?

Ja

Mathematisch: modulo 2

und wie schreibe ich das dann: Zahl1+Zahl2==modula2 ?

Hallo,

Mathematisch: modulo 2

und wie schreibe ich das dann: Zahl1+Zahl2==modula2 ?

Ähm … vielleicht solltest Du mal ein Blick in ein C oder C++ Buch werfen? Du musst Dich zunächst einmal fragen, wie sich gerade und ungerade Zahlen unterscheiden lassen. „Modulo“ heisst „Dividiere ganzzahlig und schau Dir den Rest an …“. Na? Klickerts? Du musst also irgendwie ein Unterscheidungskriterium finden und dann das Ergebnis daraufhin untersuchen. Da dürfte dann sicher ein „if“ fällig sein :smile:

Viel Spaß beim Knobeln :smile:

Gruß

Fritze

Mathematisch: modulo 2

und wie schreibe ich das dann: Zahl1+Zahl2==modula2 ?

if (zahl % 2 == 0)
{
// zahl ist gerade
}
else
{
// zahl ist ungerade
}

oder mit dem Vorschlag, bit 0 zu testen:

if ((zahl&1) == 0)
{
// bit 0 nicht gesetzt => gerade
}
else
{
// bit 0 gesetzt => ungerade
}

Martin