public void MainMenu(int i)
        {
            Console.WriteLine("Select an option...");
            Console.WriteLine("0 - Generic Test File");
            Console.WriteLine("1 - Prime numbers generator and binary search");
            Console.WriteLine("2 - Eight Queen Problem");
            Console.WriteLine("3 - Buy Sell Gold");
            Console.WriteLine("4 - ParallelMatrixComputation");
            ConsoleKeyInfo key = Console.ReadKey();

            Console.WriteLine(i);

            switch (key.KeyChar)
            {
            case '0':
                SecondaryMenu.Meh();
                break;

            case '1':
                BinarySieve.ExecuteBinaryAndSieve();
                break;

            case '2':
                EightQueenProblem.Backtracking();
                break;

            case '3':
                BuySellGold.Initialize();
                break;

            case '4':
                ParallelMatrixMultiplication.ExecuteMultiplyMatrices();
                break;
            }
        }
예제 #2
0
        public static void ExecuteBinaryAndSieve()
        {
            BinarySieve     sieve = new BinarySieve();
            IMenuController alg   = new Algorythms() as IMenuController;

            int maxPrimeSetSize;

            if (!int.TryParse(Console.ReadLine(), out maxPrimeSetSize))
            {
                Console.WriteLine("Not a number. Bhye, Bhye!");
                Console.ReadLine();

                alg.MainMenu();
            }
            if (maxPrimeSetSize > 500000)
            {
                Console.WriteLine("The number was larger than 500.000. We don't have all day here...");
                Console.ReadLine();
                return;
            }
            DateTime startTime = DateTime.Now;

            sieve.BinarySearch(sieve.SieveOfEratostenes(maxPrimeSetSize));
            DateTime endTime   = DateTime.Now;
            string   deltaTime = (endTime - startTime).TotalSeconds.ToString();

            Console.WriteLine($"\nExecution time was {deltaTime} seconds");
            Console.ReadLine();

            alg.MainMenu();
        }