public void CheckFactorsReturnsNumberPassed(int number, int expected) { FactorChecker fc = new FactorChecker(); FactorResult result = fc.CheckFactors(number); int actual = result.Number; Assert.AreEqual(expected, actual); }
public void TestFactors(int number, int[] factors, bool perfect, bool prime) { FactorChecker checker = new FactorChecker(); FactorResult result = checker.CheckFactors(number); Assert.AreEqual(factors, result.Factors); Assert.AreEqual(perfect, result.IsPerfect); Assert.AreEqual(prime, result.IsPrime); }
public bool CheckPerfect(FactorResult result) { int sum = 0; foreach (int num in result.Factors) { sum += num; } return(sum == result.Number); }
static void Main(string[] args) { Console.WriteLine("Enter a number: "); int number = int.Parse(Console.ReadLine()); FactorChecker checker = new FactorChecker(); FactorResult result = checker.CheckFactors(number); PrintResults(result); Console.ReadLine(); }
public FactorResult CheckFactors(int number) { FactorResult result = new FactorResult(); result.Number = number; result.Factors = GetFactors(number); result.IsPerfect = CheckPerfect(result); result.IsPrime = result.Factors.Count == 1; return(result); }
private static void PrintResults(FactorResult result) { Console.Clear(); Console.WriteLine("****** Factorizor Results ********"); Console.WriteLine("\n\nThe factors of {0} are:", result.Number); foreach (int num in result.Factors) { Console.WriteLine("{0}", num); } Console.WriteLine("\nPerfect: {0}", result.IsPerfect); Console.WriteLine("\nPrime: {0}", result.IsPrime); }