Project euler problem 45

Posted by Peter on Stack Overflow See other posts from Stack Overflow or by Peter
Published on 2011-01-01T20:54:13Z Indexed on 2011/01/01 21:54 UTC
Read the original article Hit count: 292

Filed under:
|
|

Hi, I'm not yet a skilled programmer but I thought this was an interesting problem and I thought I'd give it a go.

Triangle, pentagonal, and hexagonal numbers are generated by the following formulae:

  • Triangle T_(n)=n(n+1)/2 1, 3, 6, 10, 15, ...
  • Pentagonal P_(n)=n(3n-1)/2 1, 5, 12, 22, 35, ...
  • Hexagonal H_(n)=n(2n-1) 1, 6, 15, 28, 45, ...

It can be verified that T_(285) = P_(165) = H_(143) = 40755.

Find the next triangle number that is also pentagonal and hexagonal.

Is the task description.

I know that Hexagonal numbers are a subset of triangle numbers which means that you only have to find a number where Hn=Pn. But I can't seem to get my code to work. I only know java language which is why I'm having trouble finding a solution on the net womewhere. Anyway hope someone can help. Here's my code

public class NextNumber {

    public NextNumber() {
    next();
    }

    public void next() {


int n = 144;
int i = 165;
int p = i * (3 * i - 1) / 2;
int h = n * (2 * n - 1);
        while(p!=h) {
            n++;
           h = n * (2 * n - 1);

            if (h == p) {
                System.out.println("the next triangular number is" + h);
            } else {
                while (h > p) {
                    i++;
                    p = i * (3 * i - 1) / 2;
                }
                if (h == p) {
                    System.out.println("the next triangular number is" + h); break;
                    }
                 else if (p > h) {
                    System.out.println("bummer");
                }
            }

            }

    }
}

I realize it's probably a very slow and ineffecient code but that doesn't concern me much at this point I only care about finding the next number even if it would take my computer years :) . Peter

© Stack Overflow or respective owner

Related posts about java

Related posts about algorithm