public void TestarOperacaoObterDivisores() { var operacao = new OperacaoService().ObterDivisores(numero); NumerosDivisores valorEsperado = new NumerosDivisores { NaoPrimos = new List <int> { 548, 274, 4, 1 }, Primos = new List <int> { 137, 2 } }; operacao.Should().BeEquivalentTo(valorEsperado); }
public NumerosDivisores ObterDivisores(int numero) { NumerosDivisores divs = new NumerosDivisores(); for (int i = numero; i > 0; i--) { if (numero % i == 0) { if (EhPrimo(i)) { divs.Primos.Add(i); } else { divs.NaoPrimos.Add(i); } } } return(divs); }