Beispiel #1
0
        static void Main(string[] args)
        {
            TopMenu menu = new TopMenu();

            BeastsZoo  beasts     = new BeastsZoo();
            DataSource dataSource = new DataSource();

            dataSource.GetBeasts(beasts);

            beasts.PrintAll();
            do
            {
            } while (menu.MakeChoice(beasts) != 0);



            Console.ReadKey();
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            TopMenu menu = new TopMenu();

            BeastsZoo  beasts     = new BeastsZoo();
            DataSource dataSource = new DataSource();

            dataSource.GetBeasts(beasts);

            TimerCallback tm    = new TimerCallback(BeastsZoo.EmptyZooRandom);
            Timer         timer = new Timer(tm, beasts, 5000, 5000);


            beasts.PrintAll();
            do
            {
            } while (menu.MakeChoice(beasts) != 0);


            Console.ReadKey();
        }
Beispiel #3
0
        public int MakeChoice(BeastsZoo beasts)
        {
            Console.WriteLine("Работа со списком зверей:");
            Console.WriteLine("1) добавить зверя(максимально здорового);  \n2) удалить зверя;  \n3) покормить зверя; \n4) подлечить зверя(+1); \n5) не кормить/ухудшать здоровье;");
            Console.WriteLine("9) механизм уничтожения в случайном порядке;  \n0) выход без уничтожения");

            Console.WriteLine("\nПоказать(сделать выборку), используя LINQ : \na) всех зверей (сгруппировав по виду);  \nb) зверей в определенном состоянии;  \nc) больных тигров; ");
            Console.WriteLine("d) слона с определенной кличкой; \ne) всех кличек голодных зверей;  \nf) самых здоровых зверей каждого вида;");
            Console.WriteLine("i) количество мертвых животных каждого вида; \nj) всех волков и медведей со здоровьем >3;  \nk) зверей с максимальным и минимальным здоровьем;");
            Console.WriteLine("l) среднее количество здоровья у зверей");

            string s = InputNoEmpty();
            string cmd = s.Length > 0 ? s.Substring(0, 1).ToLower() : "";
            string name, type;

            if (cmd == "0")
            {
                Console.WriteLine("Окончание без уничтожения"); return(0);
            }
            if (cmd == "9")
            {
                Console.WriteLine("Уничтожение всех зверей в случайном порядке");
                beasts.EmptyZoo();
                return(0);
            }
            switch (cmd)
            {
            case "1":
                name = InputNoEmpty("введите кличку зверя: ");
                type = InputNoEmpty("введите породу зверя (wolf, tiger, elephant, foxi, lion, bear): ");
                beasts.AddItem(name, type); break;

            case "2":
                name = InputNoEmpty("введите кличку зверя: ");
                beasts.RemoveItem(name); break;

            case "3":
                name = InputNoEmpty("введите кличку зверя: ");
                beasts.DoEat(name); break;

            case "4":
                name = InputNoEmpty("введите кличку зверя: ");
                beasts.DoHealth(name); break;

            case "5":
                name = InputNoEmpty("введите кличку зверя: ");
                beasts.DoBadly(name); break;

            case "a":
            case "а":
                DataSource.GroupAllBeastsByType(beasts); break;

            case "b":
                s = InputNoEmpty("введите состояние для списка(Lifeless, Sick, Hungry, NonHungry): ");
                DataSource.SelectAllWithStatus(beasts, s); break;

            case "c":
            case "с":
                DataSource.SelectSickTigers(beasts); break;

            case "d":
                name = InputNoEmpty("введите кличку слона: ");
                DataSource.SelectElephantNamed(beasts, name); break;

            case "e":
            case "е":
                DataSource.SelectNamesWhichHungry(beasts); break;

            case "f":
                DataSource.SelectMostHealthyByType(beasts); break;

            case "i":
                DataSource.CountLifelessByType(beasts); break;

            case "j":
                DataSource.SelectWolfsBearsHealth(beasts); break;

            case "k":
                DataSource.SelectBeastsWithMaxMinHelth(beasts); break;

            case "l":
                DataSource.CountAverageHelth(beasts); break;

            default: Console.WriteLine("команда не опознана"); return(1);
            }
            return(1);
        }