Ejemplo n.º 1
0
        private long GetFirstTriangleNumberWithAtLeastNDivisor(int requiredNumberOfDivisors)
        {
            int n = 1;
            var nthTriangleNumber = TriangleNumberHelper.GetNthTriangleNumber(n);

            while (DivisorHelper.GetNumberOfDivisors(nthTriangleNumber) < requiredNumberOfDivisors)
            {
                n++;
                nthTriangleNumber = TriangleNumberHelper.GetNthTriangleNumber(n);
            }
            return(nthTriangleNumber);
        }
Ejemplo n.º 2
0
        public void GetListOfTriangleNumbersBelowMax_WithMax56_ReturnsCorrectList()
        {
            // Arrange
            var max            = 56;
            var expectedResult = new List <long> {
                1, 3, 6, 10, 15, 21, 28, 36, 45, 55
            };

            // Act
            var result = TriangleNumberHelper.GetListOfTriangleNumbersBelowMax(max);

            // Assert
            result.Should().BeEquivalentTo(expectedResult);
        }
Ejemplo n.º 3
0
        public void GetFirstNTriangleNumbersWhichAreAlsoPentagonalAndHexogonal_WithCount2_ReturnsCorrectList()
        {
            // Arrange
            var count        = 2;
            var expectedList = new List <long> {
                1, 40755
            };

            // Act
            var result = TriangleNumberHelper.GetFirstNTriangleNumbersWhichAreAlsoPentagonalAndHexogonal(count);

            // Assert
            result.Should().HaveCount(2);
            result.Should().BeEquivalentTo(expectedList);
        }
Ejemplo n.º 4
0
 public void GetNthTriangleNumber_ReturnsCorrectResult(int n, long nthTriangleNumber)
 {
     TriangleNumberHelper.GetNthTriangleNumber(n).Should().Be(nthTriangleNumber);
 }