Como no publicas el programa completo te toca a ti verificar que funcione correctamente (ya nos avisas si hubo algún resbalón).
Hola
rir3760 ahora si va bien en cuanto al código completo es el siguiente:
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
#include<time.h>
void bruteforce(int inc,int fin,char *rotation);
int main(void)
{
int inc, fin;
unsigned long t_start = 0, t_end = 0;
char rotation[200] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
"abcdefghijklmnopqrstuvwxyz"
"1234567890<>,?;.:/!з*╡∙%$г"
"ди+=})]р@ч^\\_`ш|-[({'#\"щ~&\0";
printf("\n Comenzar de: ");
scanf("%d", &inc);
printf("\n Terminar en: ");
scanf("%d", &fin);
t_start = clock();
bruteforce(inc, fin, rotation);
t_end = clock();
printf("Terminado en : %ld segundos.\n", (t_end - t_start)/1000);
return 0;
}
void bruteforce(int inc, int fin, char *rotation)
{
int i, j, len = strlen(rotation);
long int r, end, c;
char test[200];
end = pow(len, inc);
for(j = inc; j < fin + 1; j++)
{
for(r = 0; r != end; r++)
{
c = r;
for(i = 0; i < j; i++)
{
test[i] = rotation[c % len];
c = c / len;
}
puts(test);
}
end *= len;
}
}
Solo le cambie lo del
printf ya que considero que es mas lento que
puts Saludos
kutcher