int check_relative_cmd(char *buffer, struct s_static_socket *br) { char abso[2048]; get_abso(abso, buffer); set_append(buffer, br); if (argument(buffer) != -1) { if (strncmp(buffer, "RETR", 4) == 0) retrieve_file(abso, br); else if (strncmp(buffer, "STOR", 4) == 0 || strncmp(buffer, "APPE", 4) == 0) store_file(abso, br, 0); else if (strncmp(buffer, "STOU", 4) == 0) store_file(abso, br, 1); else if (check_relative_cmd_suite(buffer, abso, br) == -1) return (-1); br->append = 0; my_putstr(abso); my_putstr("\n"); } else return (-1); return (0); }
int main(int argc, char ** argv) { int a, b, product, sum; int * set, set_size, set_capacity; set_capacity = 2; set_size = 0; set = (int *) malloc(set_size * sizeof(int)); for(a = 1; a < 100000; a++) { if(!is_pandigital(a)) continue; for(b = a + 1; b < 100000 / a; b++) { product = a * b; if(a * b > 100000) break; if(is_pandigital3(a, b, product)) { //printf("%d * %d == %d\n", a, b, product); set_append(set, &set_size, &set_capacity, product); } } } sum = 0; for(a = 0; a < set_size; a++) sum += set[a]; printf("Sum of 1-9 pandigital products: %d\n", sum); free(set); return 0; }