static void Main(string[] args)
    {
        const int                 SIZE  = 1000;
        TransactionList           tList = new TransactionList();
        RepetitiveTransactionList rList = new RepetitiveTransactionList();

        bool finished = false;

        do
        {
            switch (MainMenu())
            {
            case '1':
                Console.WriteLine("Day: ");
                int day = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Month: ");
                int month = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Year: ");
                int year = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Amount: ");
                int amount = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Description: ");
                string description = Console.ReadLine();

                tList.Add(
                    new Transaction(day, month, year, amount, description)
                    );
                break;

            case '2':
                Console.WriteLine("Day: ");
                int rday = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Month: ");
                int rmonth = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Amount: ");
                int ramount = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Description: ");
                string rdescription = Console.ReadLine();

                rList.Add(
                    new RepetitiveTransaction
                        (rday, rmonth, ramount, rdescription)
                    );
                break;

            case '3':
                Console.WriteLine("Month: ");
                int sMonth = Convert.ToInt32(Console.ReadLine());
                Console.WriteLine("Year: ");
                int sYear = Convert.ToInt32(Console.ReadLine());
                int size  = tList.GetLength();
                for (int i = 0; i < size; i++)
                {
                    if (tList.GetTransaction(i).Contains("" + sMonth) &&
                        tList.GetTransaction(i).Contains("" + sYear))
                    {
                        Console.WriteLine(tList.GetTransaction(i));
                    }
                }
                size = rList.GetLength();
                for (int i = 0; i < size; i++)
                {
                    if (rList.GetTransaction(i).Contains("" + sMonth) &&
                        rList.GetTransaction(i).Contains("" + sYear))
                    {
                        Console.WriteLine(rList.GetTransaction(i));
                    }
                }
                break;
                break;

            case '4':
                Console.WriteLine("Enter text to search: ");
                string search = Console.ReadLine();

                int sSize = tList.GetLength();
                for (int i = 0; i < sSize; i++)
                {
                    if (tList.GetTransaction(i).Contains(search))
                    {
                        ;
                    }
                    Console.WriteLine(tList.GetTransaction(i));
                }
                size = rList.GetLength();
                for (int i = 0; i < sSize; i++)
                {
                    if (rList.GetTransaction(i).Contains(search))
                    {
                        Console.WriteLine(tList.GetTransaction(i));
                    }
                }
                break;

            case 'Q': finished = true;
                break;
            }
        } while (!finished);
    }