1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdlib.h>
#include <stdio.h>
#include <math.h>

int goedel( int n ){
   static int prime[] = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29};
   char buf[11];
   char *dk = buf;
   int *pk = prime;
   int result = 1;
   snprintf(dk,11,"%d",n);
   while(*dk){
      result *= pow( *pk++, *dk++ -'0' );
   }
   return result;
}

void main ( void ){
   printf("%d\n", goedel(9));
   printf("%d\n", goedel(81));
   printf("%d\n", goedel(230));
}