#include <stdlib.h>
#include <stdio.h>
#include <math.h>

int main(int argc, char** argv) {

   if(argc != 3) {
      fprintf(stderr,"usage: makesintab nb scaling\n");
      exit(-1);
   }
   
   int nb = atoi(argv[1]);
   int scaling = atoi(argv[2]);

   printf("// generated by make_sintab %d %d\n\n",nb,scaling);
   
   printf("int sintab[%d] = {\n    ", nb);
   for(int i=0; i<nb; ++i) {
      double alpha = (double)(i)*2*M_PI/(double)(nb);
      printf("%d",(int)(sin(alpha)*(double)(scaling)));
      if(i != nb-1) {
	 printf(",");
      }
      if(!((i+1)%20)) {
	 printf("\n    ");
      }
   }
   printf("};\n");

   printf("int costab[%d] = {\n    ", nb);
   for(int i=0; i<nb; ++i) {
      double alpha = (double)(i)*2*M_PI/(double)(nb);
      printf("%d",(int)(cos(alpha)*(double)(scaling)));
      if(i != nb-1) {
	 printf(",");
      }
      if(!((i+1)%20)) {
	 printf("\n    ");
      }
   }
   printf("};\n");

   
}
