void holy_resolve(char **tab, int pat) { int i; int x; char **tryresult; int pattern[2]; pattern[0] = pat; pattern[1] = 0; x = 0; i = pat * 4; holy_letter(tab); while ((x * x) < i) x++; while ((tryresult = holy_result(x)) == NULL) x++; resolve(tab, tryresult, pattern, x); if (tryresult == NULL) return ; }
int resolve(char **tab, char **tryresult, int *pattern, int x) { if (pattern[0] == pattern[1]) { putabl(tryresult); return (1); } if (resolve_son(tab, tryresult, pattern, x)) return (1); if (pattern[1] != 0) del_pattern(tryresult, pattern[1] - 1); else if (pattern[1] == 0) { freetab(tryresult); tryresult = holy_result(x + 1); pattern[1] = 0; if (resolve(tab, tryresult, pattern, x + 1)) return (1); else return (0); } return (0); }