示例#1
0
        public void NumberIsPerfect(string number, bool output)
        {
            PerfectChecker find   = new PerfectChecker();
            bool           actual = find.IsPerfect(number);

            Assert.AreEqual(output, actual);
        }
示例#2
0
        public void PerfectTests(int x, bool expected)
        {
            PerfectChecker perfect = new PerfectChecker();
            bool           result  = perfect.IsPerfect(x);

            Assert.AreEqual(expected, result);
        }
示例#3
0
        public void Run()
        {
            int var = GetNumberFromUser();

            Console.WriteLine($"The factors of {var} are: ");
            int countOfFactors = FactorFinder.GetFactorsCount(var);

            int[] foundFactors = FactorFinder.GetFactors(countOfFactors, var);

            Console.WriteLine($"{string.Join(", ", foundFactors)}");



            if (PrimeChecker.IsPrimeNumber(var) == true)
            {
                Console.WriteLine($"{var} is PRIME");
            }

            else
            {
                Console.WriteLine($"{var} is NOT PRIME ");
            }

            if (PerfectChecker.GetPerfectNumber(var) == true)
            {
                Console.WriteLine($"{var} is a PERFECT number!");
            }
            else
            {
                Console.WriteLine($"{var} is NOT a PERFECT number!");
            }
        }
示例#4
0
        public void RunProg()
        {
            ConsoleOutput.DisplayTitle();
            Console.Clear();
            ConsoleKeyInfo keyPressed;

            do
            {
                MyManager = new WorkManager();

                int enteredNumber = ConsoleInput.GetNumberFromUser();

                FactorFinder factorResults = MyManager.ProcessNumber(enteredNumber);
                ConsoleOutput.DisplayFactors(factorResults);

                PerfectChecker perfectResults = MyManager.ProcessPerfect(enteredNumber);
                ConsoleOutput.DisplayPerfect(perfectResults);

                PrimeChecker primeResults = MyManager.ProcessPrime(enteredNumber);
                ConsoleOutput.DisplayPrime(primeResults);

                ConsoleOutput.ContinueOrQuitMessage();
                keyPressed = ConsoleInput.ContinueOrQuit();

                Console.Clear();
            } while (!(keyPressed.Key == ConsoleKey.Q));
        }
示例#5
0
        public void StartProgram()
        {
            int[] arrFactor;

            ConsoleOutput  consoleOutput  = new ConsoleOutput();
            ConsoleInput   consoleInput   = new ConsoleInput();
            FactorFinder   factorFinder   = new FactorFinder();
            PerfectChecker perfectChecker = new PerfectChecker();
            PrimeChecker   primeChecker   = new PrimeChecker();

            consoleOutput.OutputMessage("Which number Do you want to factor: ");
            consoleInput.UserInput = int.Parse(Console.ReadLine());
            arrFactor = factorFinder.FactorArray(consoleInput.UserInput);
            consoleOutput.OutputMessage("The Factors are: \n");
            consoleOutput.StringJoinArray(arrFactor);
            if (perfectChecker.PerfectNumber(consoleInput.UserInput))
            {
                consoleOutput.OutputMessage($"{consoleInput.UserInput} is a Perfect Number. \n");
            }
            else
            {
                consoleOutput.OutputMessage($"{consoleInput.UserInput} is NOT a Perfect Number. \n");
            }

            if (primeChecker.PrimeNumber(consoleInput.UserInput))
            {
                consoleOutput.OutputMessage($"{consoleInput.UserInput} is a Prime Number. \n");
            }
            else
            {
                consoleOutput.OutputMessage($"{consoleInput.UserInput} is NOT a Prime Number.\n");
            }

            Console.ReadKey();
        }
 private void Calculate()
 {
     _factors = FactorFinder.FindFactorList(_target);
     _factors.Add(_target);
     _isPrime   = PrimeChecker.IsPrime(_target);
     _isPerfect = PerfectChecker.IsPerfect(_target);
 }
示例#7
0
        public void TestPerfectNumber(int x, bool expected)
        {
            PerfectChecker perfectNumber = new PerfectChecker();
            bool           result        = perfectNumber.PerfectNumber(x);

            Assert.AreEqual(expected, result);
        }
        public void Start()
        {
            FactorFinder ff  = new FactorFinder();
            int          num = InputClass.GetIntFromUser("Enter number to process");

            int[] factors = ff.GetFactors(num);
            OutputClass.SentToConsole($"\nThe factors of {num} are as follows:\n");
            for (int i = 0; i < factors.Length; i++)
            {
                OutputClass.SentToConsole($"{factors[i]}");
            }

            if (PerfectChecker.IsItPerfect(factors))
            {
                OutputClass.SentToConsole($"\n{num} is a perfect number!");
            }
            else
            {
                OutputClass.SentToConsole($"\n{num} is NOT a perfect number!");
            }


            if (PrimeChecker.IsItPrime(factors))
            {
                OutputClass.SentToConsole($"\n{num} is a prime number!");
            }
            else
            {
                OutputClass.SentToConsole($"\n{num} is NOT a prime number!");
            }

            OutputClass.SentToConsole("\nPress any key to end.");
            Console.ReadKey();
        }
        public void PerfectNumberTest(int number, bool expected)
        {
            PerfectChecker pc = new PerfectChecker();

            bool actual = pc.IsPerfectNumber(number);

            Assert.AreEqual(expected, actual);
        }
示例#10
0
        public void StartFactoring()
        {
            var num     = Input.GetNumberFromUser();                // get # from user
            var factors = FactorFinder.FactFinder(num);             // get factor
            var prime   = PrimeChecker.Prime(factors);              // is prime
            var perfect = PerfectChecker.Perfect(factors, num);     // is perfect

            Output.Results(num, factors, prime, perfect);           // send results to Output.cs
        }
示例#11
0
        public void SixIsPerfectTest()
        {
            WorkManager testInstance = new WorkManager();

            testInstance.Start();

            PerfectChecker actual = testInstance.ProcessPerfect(6);

            Assert.AreEqual(true, actual.IsPerfect);
        }
示例#12
0
 public static void DisplayPerfect(PerfectChecker value)
 {
     if (value.IsPerfect)
     {
         Console.WriteLine($"{value.GetMyNumber()} is perfect.");
     }
     else
     {
         Console.WriteLine($"{value.GetMyNumber()} is not perfect.");
     }
 }
示例#13
0
        internal static void DisplayPerfect(int number, List <int> factors)
        {
            PerfectChecker checker = new PerfectChecker();
            var            success = checker.IsPerfect(number, factors);

            if (success == true)
            {
                Console.WriteLine($"{number} is a perfect number");
            }
            else
            {
                Console.WriteLine($"{number} is not a perfect number.");
            }
        }
示例#14
0
        //the workflow should invoke methods to perform tasks.
        //It should not contain any calculations.

        public void Run()
        {
            Console.WriteLine("Welcome to Factorizer");
            do
            {
                Console.WriteLine("Please enter an integer: ");
                int number = ConsoleInput.AwaitUserInput();
                Console.WriteLine();
                ConsoleOutput.ReportFactors(number, FactorFinder.GetFactors(number));
                ConsoleOutput.ReportAttribte(number, PrimeChecker.isPrime(number), "prime");
                ConsoleOutput.ReportAttribte(number, PerfectChecker.isPerfect(number), "prefect");
                Console.WriteLine("Press ESC to quit or any kep to continue");
            } while (!ConsoleInput.UserEscapes());
        }
示例#15
0
        public void RunFactorFinder()
        {
            ConsoleOutput.DisplayTitle();
            int          input       = ConsoleInput.GetUserInput();
            FactorFinder findFactors = new FactorFinder();

            int[] factors = findFactors.FactorArray(input);

            PrimeChecker   checkPrime   = new PrimeChecker();
            bool           isPrime      = checkPrime.IsPrime(input);
            PerfectChecker checkPerfect = new PerfectChecker();
            bool           isPerfect    = checkPerfect.IsPerfect(input);

            ConsoleOutput.DisplayResults(input, factors, isPrime, isPerfect);
        }
示例#16
0
        public static void DisplayPerfectNumber(int number)
        {
            PerfectChecker pc        = new PerfectChecker();
            bool           isPerfect = pc.IsPerfectNumber(number);

            Console.WriteLine("|-------------------------------------------|\n");
            Console.ForegroundColor = ConsoleColor.Magenta;
            if (isPerfect)
            {
                Console.WriteLine($"The number {number} is a perfect number.\n");
            }
            else
            {
                Console.WriteLine($"The number {number} is NOT a perfect number.\n");
            }
            Console.ResetColor();

            Console.WriteLine("|-------------------------------------------|\n");

            //Console.WriteLine("Press any key to continue...\n");
            //Console.ReadKey();
        }
示例#17
0
        public void Execute()
        {
            //get number to factorize
            int number = ConsoleInput.GetNumberFromUser("What number would you like to factor? ", 1);

            //determine factors (static)
            int[] factors = FactorFinder.Execute(number);
            ConsoleOutput.Factors(number, factors);

            //prime it (is not static)
            PrimeChecker primeChecker = new PrimeChecker();
            bool         result       = primeChecker.IsPrimeNumber(number);

            ConsoleOutput.PrimeNumberResult(number, result);

            //perfect num
            PerfectChecker perfectChecker = new PerfectChecker();

            perfectChecker.Number = number;
            bool isPerfect = perfectChecker.IsPerfectNumber();

            ConsoleOutput.PerfectNumberResult(number, result);
        }
        public void PerfectCheckerTest(int[] x, bool expected)
        {
            bool actual = PerfectChecker.IsItPerfect(x);

            Assert.AreEqual(expected, actual);
        }
示例#19
0
        public void isPerfectNumber(int input, bool expectedOutput)
        {
            bool actualOutput = PerfectChecker.IsPerfectNumber(input);

            Assert.AreEqual(expectedOutput, actualOutput);
        }
示例#20
0
        public void PrimeTest(int test, bool expected)
        {
            var actual = PerfectChecker.Perfect(FactorFinder.FactFinder(test), test);

            Assert.AreEqual(expected, actual);
        }
        public void PerfectTest(int target, bool perfectResult)
        {
            bool isPerfect = PerfectChecker.IsPerfect(target);

            Assert.AreEqual(isPerfect, perfectResult);
        }