]> git.llucax.com Git - z.facultad/75.06/jacu.git/blob - otros/blocksorting/main.c
Cambio para que tome datos de la entrada estandar, espero que no joda.
[z.facultad/75.06/jacu.git] / otros / blocksorting / main.c
1
2 #include "bs.h"
3
4 int main(int argc, char *argv[])
5 {
6         char *data; 
7         char *salida;
8         unsigned long int len, i, k;
9         FILE *fp;
10         char c;
11         t_BlockSort *bs;
12         
13 /*      if (argc != 3) {
14                 printf("Modo de uso : %s <archivo datos> <tamaƱo pagina>\n", argv[0]);
15                 return 0;
16         }
17 */
18         fp = stdin; /*fopen(argv[1], "r");*/
19         len = atoi(argv[1]);
20
21         data = malloc(sizeof(char)*len);
22         salida = malloc(sizeof(char)*(len+1));
23
24         salida[len] = '\0';
25         bs = bs_create(len);
26
27         while ((c = fgetc(fp)) != EOF) {
28                 i = 0;
29                 while ((c!=EOF) && (i < len)) {
30                         data[i++] = c;
31                         c = fgetc(fp);
32                 }
33                 bs_solve(data, salida, bs, &k, i);
34
35                 /* XXX ACA SALIDA DEBERIA PASAR A LA SIGUIENTE ETAPA XXX */
36                 /*printf("%s -> %ld\n", salida, k);*/
37                 printf("%s", salida);
38         }
39         fclose(fp);
40         bs_destroy(bs);
41
42         free(data);
43         free(salida);
44         return 0;
45 }
46
47