diff options
author | mjfernez <mjfernez@gmail.com> | 2020-02-16 16:42:23 -0500 |
---|---|---|
committer | mjfernez <mjfernez@gmail.com> | 2020-02-16 16:42:23 -0500 |
commit | 64c113b89b96b1cbdec8ba6b3323aeff77ca0c85 (patch) | |
tree | 3f877d934a27ee12fc40e01b6f7b17b2f22e659c /06-Sum-Square-Difference/sumsq.c | |
parent | d21e516c4ec3ab5b85f52df9aa7daa7f020b5f7b (diff) | |
download | Project_Euler_Solutions-64c113b89b96b1cbdec8ba6b3323aeff77ca0c85.tar.gz |
Added sumsq.c. Fixed pyhton solution for the same
Diffstat (limited to '06-Sum-Square-Difference/sumsq.c')
-rw-r--r-- | 06-Sum-Square-Difference/sumsq.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/06-Sum-Square-Difference/sumsq.c b/06-Sum-Square-Difference/sumsq.c new file mode 100644 index 0000000..1de2ebe --- /dev/null +++ b/06-Sum-Square-Difference/sumsq.c @@ -0,0 +1,20 @@ +#include <stdio.h> + +// Find the difference between (1+2+3+...+100)^2 and (1^2+2^2+3^2+...+100^2) +// I used another math trick here: +// The sum up to a number can be found using Gauss' Trick: +// 1 + 2 + 3 + ... + 10 -> (1+9) + (2+8) + (3+7) + (4+6) + 10 + 5 -> 5*10 +5 +// In general : (n/2)(n+1) + +int main() { + long sqsum = 50 * 101; + sqsum *=sqsum; + printf("The square of the sum is: %lu\n", sqsum); + long sumsq = 0; + for(long i = 1; i <= 100; i++) { + sumsq += i * i; + } + printf("The sum of the squares is: %lu\n", sumsq); + printf("Difference: %lu\n", sqsum - sumsq); + return 0; +} |