Monday 13 April 2009

PROJECT EULER #45

Link to Project Euler problem 45

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.


using System;

namespace ProjectEuler
{
class Program
{
static void Main()
{
//Problem 45
DateTime start = DateTime.Now;
for (double i = 1; i < 1000000; i++)
{
double triangle = i/2*(i + 1);
for (double j = 1; j <= i; j++)
{
double pentagonal = j/2*(3*j - 1);
if (triangle == pentagonal)
{
for (double k = 1; k <= j; k++)
{
double hexagonal = k*(2*k - 1);
if ( triangle==hexagonal&&triangle>40755)
{
Console.WriteLine(triangle +" "+ pentagonal +" "+ hexagonal);
TimeSpan time = DateTime.Now - start;
Console.WriteLine("This took {0}", time);
Console.ReadKey();
}
}
}
}
}
}
}
}

No comments: