Tuesday, February 9, 2010

Problem 6: Squares and Sums

I think I am going to abandon any pretense of tackling problems in the proper order. The difficulty varies and the more difficult problems are not only more difficult to solve, but also require more time for the write up.

Problem 6 is one of the easy ones.

The sum of the squares of the first ten natural numbers is,
1^(2) + 2^(2) + ... + 10^(2) = 385

The square of the sum of the first ten natural numbers is,
(1 + 2 + ... + 10)^(2) = 55^(2) = 3025

Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 − 385 = 2640.

Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.

So easy that the code doesn't really require a write up, there simply isn't much to this problem.
public class Euler6 {

    private static int sumOfTheSquares(int n) {
        int sum = 0;

        for (int i = 1; i <= n; i++) {
            sum += i * i;
        }

        return sum;
    }

    private static int squareOfTheSum(int n) {
        int sum = 0;

        for (int i = 1; i <= n; i++) {
            sum += i;
        }

        return sum * sum;
    }

    public static void main(String[] args) {
        int n = 100;
        int diff = squareOfTheSum(n) - sumOfTheSquares(n);
        System.out.println(diff);
    }
}

No comments: