#include <stdio.h>

int power(int,int), fact(int);

int main() {
  int i;
  for ( i = 0; i < 10; i++)
    printf("%d %6d %6d\n", i, power(2,i), fact(i));
}

int power(int base, int n) {       /* berechnet base hoch n   */
  int i, p = 1;                    /* Beim Deklarieren wird p initialisiert */
  for (i = n; i > 0; i--)
    p = p * base;                  /* Kuerzer: p *= base;     */
  return p;
}

int fact(int y) {                  /* berechnet 1*2* ... *(y-1)*y    */
  int ergebnis = 1;			
  while (y != 0)                   /* Achtung! Falls y < 0 ....      */
    ergebnis *= y--;               /* kurz fuer: ergebnis = ergebnis * y; y--; */
  return ergebnis;
}
