/***************************************************************/ /* Prof. Dr. Carsten Vogt */ /* FH Koeln, Fak. 07 / Nachrichtentechnik */ /* http://www.nt.fh-koeln.de/vogt */ /* */ /* Beispielprogramm p06020102.c */ /* aus "C fuer Java-Programmierer", Hanser-Verlag */ /* */ /* Demonstriert wird die wechselseitige Rekursion, also der */ /* gegenseitige Aufruf zweier Funktionen. */ /***************************************************************/ #include unsigned int gerade(unsigned int x); unsigned int ungerade(unsigned int x); unsigned int gerade(unsigned int x) { if (x==0) return 1; /* true */ if (x==1) return 0; /* false */ return ungerade(x-1); } unsigned int ungerade(unsigned int x) { if (x==0) return 0; /* false */ if (x==1) return 1; /* true */ return gerade(x-1); } int main(void) { unsigned int x; printf("Bitte eine nichtneg. ganze Zahl eingeben: "); scanf("%u",&x); if (gerade(x)) printf("Gerade\n"); else printf("Ungerade\n"); return 0; }