Exemplo n.º 1
0
 public void GetDivisors_InputIsValid_ReturnsDivisors()
 {
     Divisors.GetDivisors(1).ShouldBeSubsetOf(new List <int> {
         1
     });
     Divisors.GetDivisors(2).ShouldBeSubsetOf(new List <int> {
         1, 2
     });
     Divisors.GetDivisors(3).ShouldBeSubsetOf(new List <int> {
         1, 2, 3
     });
     Divisors.GetDivisors(4).ShouldBeSubsetOf(new List <int> {
         1, 2, 4
     });
     Divisors.GetDivisors(5).ShouldBeSubsetOf(new List <int> {
         1, 5
     });
     Divisors.GetDivisors(9).ShouldBeSubsetOf(new List <int> {
         1, 3, 9
     });
     Divisors.GetDivisors(10).ShouldBeSubsetOf(new List <int> {
         1, 2, 5, 10
     });
     Divisors.GetDivisors(11).ShouldBeSubsetOf(new List <int> {
         1, 11
     });
     Divisors.GetDivisors(13).ShouldBeSubsetOf(new List <int> {
         1, 13
     });
     Divisors.GetDivisors(20).ShouldBeSubsetOf(new List <int> {
         1, 2, 4, 5, 10, 20
     });
 }
        private bool IsAbundantNumber(int number)
        {
            int sum = 0;

            foreach (int divisor in Divisors.GetDivisors(number))
            {
                sum += divisor;
            }
            return(sum > number);
        }
Exemplo n.º 3
0
        private int GetDofN(int number)
        {
            if (memo.ContainsKey(number))
            {
                return(memo[number]);
            }
            int sum = 0;

            foreach (int divisor in Divisors.GetDivisors(number))
            {
                sum += divisor;
            }
            memo.Add(number, sum);
            return(sum);
        }
Exemplo n.º 4
0
 public void GetDivisors_InputIsInvalid_ThrowsException(int number)
 {
     ShouldThrowExtensions.ShouldThrow <ArgumentException>(() => Divisors.GetDivisors(number));
 }