Refactor c/difference-of-squares
This commit is contained in:
@@ -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);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user