fix modf error
This commit is contained in:
@@ -103,6 +103,10 @@ static void solve_degree_2(s_solution_degree_2 *solution, double a, double b, do
|
||||
{
|
||||
double delta;
|
||||
|
||||
solution->a = a;
|
||||
solution->b = b;
|
||||
solution->c = c;
|
||||
|
||||
delta = b * b - 4 * a * c;
|
||||
solution->delta_sign = ft_fsign(delta);
|
||||
solution->delta_absolute = ft_fabs(delta);
|
||||
@@ -115,7 +119,7 @@ static void solve_degree_2(s_solution_degree_2 *solution, double a, double b, do
|
||||
solution->first_term = -b / (2 * a);
|
||||
|
||||
// second term
|
||||
// solution->second_term_gcd = find_gcd(b, 2 * a);
|
||||
solution->second_term_gcd = find_gcd(solution->delta_sqrt, 2 * a);
|
||||
// solution->second_term_numerator = ;
|
||||
// solution->second_term_denominator = ;
|
||||
// solution->second_term = ;
|
||||
|
||||
@@ -76,22 +76,29 @@ static void print_context_solution()
|
||||
if (solution_g_err->degree == 2)
|
||||
{
|
||||
solution_2 = solution_g_err->solution_degree_2;
|
||||
dprintf(STDERR_FILENO, "degree 2 : delta > 0 ( -b/2a +- √Δ/2a )\n");
|
||||
dprintf(STDERR_FILENO, " delta == 0 ( -b/2a )\n");
|
||||
dprintf(STDERR_FILENO, " delta < 0 ( -b/2a +- i√|Δ|/2a )\n");
|
||||
dprintf(STDERR_FILENO, "delta_sign : %25s\n", delta_sign_to_str(solution_2.delta_sign));
|
||||
dprintf(STDERR_FILENO, "delta_absolute : %25g ( |Δ| == |b² - 4ac| )\n", solution_2.delta_absolute);
|
||||
dprintf(STDERR_FILENO, "delta_sqrt : %25g (√|Δ| )\n", solution_2.delta_sqrt);
|
||||
dprintf(STDERR_FILENO, "first_term_gcd : %25i\n", solution_2.first_term_gcd);
|
||||
dprintf(STDERR_FILENO, "first_term_numerator : %25i (-b / gcd )\n", solution_2.first_term_numerator);
|
||||
dprintf(STDERR_FILENO, "first_term_denominator : %25i (2a / gcd )\n", solution_2.first_term_denominator);
|
||||
dprintf(STDERR_FILENO, "first_term : %25g (-b / 2a )\n", solution_2.first_term);
|
||||
// dprintf(STDERR_FILENO, "second_term_gcd : %25g\n", solution_2.second_term_gcd);
|
||||
// dprintf(STDERR_FILENO, "second_term_numerator : %25g\n", solution_2.second_term_numerator);
|
||||
// dprintf(STDERR_FILENO, "second_term_denominator: %25g\n", solution_2.second_term_denominator);
|
||||
// dprintf(STDERR_FILENO, "second_term : %25g\n", solution_2.second_term);
|
||||
// dprintf(STDERR_FILENO, "solution1 : %25g\n", solution_2.solution1);
|
||||
// dprintf(STDERR_FILENO, "solution2 : %25g\n", solution_2.solution2);
|
||||
dprintf(STDERR_FILENO, "degree 2 : delta > 0 ( -b / 2a +- √Δ / 2a )\n");
|
||||
dprintf(STDERR_FILENO, " delta == 0 ( -b / 2a )\n");
|
||||
dprintf(STDERR_FILENO, " delta < 0 ( -b / 2a +- i√|Δ| / 2a )\n");
|
||||
|
||||
dprintf(STDERR_FILENO, "a : %15g\n", solution_2.a);
|
||||
dprintf(STDERR_FILENO, "b : %15g\n", solution_2.b);
|
||||
dprintf(STDERR_FILENO, "c : %15g\n", solution_2.c);
|
||||
|
||||
dprintf(STDERR_FILENO, "delta_sign : %15s\n", delta_sign_to_str(solution_2.delta_sign));
|
||||
dprintf(STDERR_FILENO, "delta_absolute : %15g ( |Δ| == |b² - 4ac| )\n", solution_2.delta_absolute);
|
||||
dprintf(STDERR_FILENO, "delta_sqrt : %15g ( √|Δ| )\n", solution_2.delta_sqrt);
|
||||
|
||||
dprintf(STDERR_FILENO, "first_term_gcd : %15i\n", solution_2.first_term_gcd);
|
||||
dprintf(STDERR_FILENO, "first_term_numerator : %15i ( -b / gcd )\n", solution_2.first_term_numerator);
|
||||
dprintf(STDERR_FILENO, "first_term_denominator : %15i ( 2a / gcd )\n", solution_2.first_term_denominator);
|
||||
dprintf(STDERR_FILENO, "first_term : %15g ( -b / 2a )\n", solution_2.first_term);
|
||||
|
||||
dprintf(STDERR_FILENO, "second_term_gcd : %15i\n", solution_2.second_term_gcd);
|
||||
// dprintf(STDERR_FILENO, "second_term_numerator : %15g\n", solution_2.second_term_numerator);
|
||||
// dprintf(STDERR_FILENO, "second_term_denominator: %15g\n", solution_2.second_term_denominator);
|
||||
// dprintf(STDERR_FILENO, "second_term : %15g\n", solution_2.second_term);
|
||||
// dprintf(STDERR_FILENO, "solution1 : %15g\n", solution_2.solution1);
|
||||
// dprintf(STDERR_FILENO, "solution2 : %15g\n", solution_2.solution2);
|
||||
}
|
||||
|
||||
ft_putchar_fd('\n', STDERR_FILENO);
|
||||
|
||||
Reference in New Issue
Block a user