exercism

Exercism solutions.
Log | Files | Refs

commit f8127fdf4a562bc6f10f050d04db741120562512
parent e91639751eb2ea8dd711c6a195e509f7f4f92963
Author: dwrz <dwrz@dwrz.net>
Date:   Fri,  7 Jun 2019 01:35:25 +0000

Refactor c/difference-of-squares

Diffstat:
Mc/difference-of-squares/src/difference_of_squares.c | 13+++++++------
1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/c/difference-of-squares/src/difference_of_squares.c b/c/difference-of-squares/src/difference_of_squares.c @@ -1,17 +1,18 @@ #include <stdio.h> -#include <math.h> int square_of_sum(int n) { - int sum = (int) (n * ((n * 0.5) + 0.5)); - return pow(sum, 2); + int sum = (n * (n + 1)) / 2; + return sum * sum; } int sum_of_squares(int n) { - printf("%d\n", n); - return n; + int sum = 0; + + for (int i = 1; i <= n; i++) sum += i * i; + + return sum; } int difference_of_squares(int n) { - printf("%d\n", n); return square_of_sum(n) - sum_of_squares(n); }