int main() { list* List = list_ctor(); list_dump(List); el_add(List, List -> head, 5); list_dump(List); el_add(List, List -> head, 5); list_dump(List); el_add(List, List -> head, 5); list_dump(List); el_add(List, List -> head, 5); list_dump(List); el_add(List, List -> head, 5); list_dump(List); }
/* eliminate cell (j, k) using row i */ void eliminate(size_t n, num *equation, size_t i, size_t j, size_t k) { num c[] = { equation[i * (n + 1) + k], equation[j * (n + 1) + k] }; remove_common_factors(sizeof(c) / sizeof(*c), c); el_scale(n, equation, j, c[0]); el_add(n, equation, j, i, -c[1]); simplify_row(n, equation, j); #ifndef NDEBUG print_augmatrix(n, equation); #endif }