/* RESOLVER EL PROBLEMA DE LA SOPA DE LETRAS UTILIZANDO EL ALGORITMO DE BUSQUEDA POR FUERZA BRUTA J. Rafael R. Ochoa */ #include <stdio.h> #include <conio.h> #include <string.h> #define EOL '\n' char cadena[16]; char patron[16]; int search(char *, char *); void pausa(void); void main() { int result; clrscr(); printf("\nBUSQUEDA POR FUERZA BRUTA..."); printf("\n\nAhora un patron a buscar (max 10)\n"); result=search(patron, cadena); if (result!=0) printf("\nEl patron se encuentra en la posiciOn: %d", result); else printf("\nEl patron no se encuentra en la cadena"); pausa(); clrscr(); } int search(char *p, char *a) { int i, j, M=strlen(p), N=strlen(a); printf("\nBUsqueda hacia la derecha: "); for (i=0, j=0;j<M && i<N; i++, j++) if (a[i] != p[j]) {i -= j; j= -1; } if (j==M) return (i-M+1); else {printf(" ...No se encontrO"); printf("\nBUsqueda hacia la izquierda: "); for (i=N, j=0;j<M && i>=0; i--, j++) if (a[i] != p[j]) {i += j; j= -1; } if (j==M) return (i+M+1); else {printf("...No se encontrO"); return 0; } } } void pausa() { gotoxy(40,23); printf("oprima una tecla: "); getche(); }