Beispiel #1
0
        static void Main(string[] args)
        {
            GumballMachine gumballMachine = new GumballMachine(5);

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.EjectQuarter();
            gumballMachine.TurnCrank();

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.EjectQuarter();

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();

            Console.WriteLine(gumballMachine);
        }
        static void Main(string[] args)
        {
            GumballMachine machine = new GumballMachine(2);

            machine.InsertsQuarter();
            machine.TurnsCrank();
            machine.DispenseGumball();
            machine.InsertsQuarter();
            machine.EjectQuarter();
            machine.InsertsQuarter();
            machine.InsertsQuarter();
            machine.TurnsCrank();
            machine.DispenseGumball();
            machine.InsertsQuarter();
            machine.TurnsCrank();
            machine.DispenseGumball();
            machine.Refill();
            machine.InsertsQuarter();
            machine.TurnsCrank();
            machine.DispenseGumball();
            machine.InsertsQuarter();
            machine.EjectQuarter();
            machine.InsertsQuarter();
            machine.InsertsQuarter();
            machine.TurnsCrank();
            machine.DispenseGumball();

            Console.ReadKey();
        }
Beispiel #3
0
        public void Run()
        {
            GumballMachine machine = new GumballMachine(5);

            Console.WriteLine(machine);

            machine.InsertQuarter();
            machine.TurnCrank();

            Console.WriteLine(machine);

            machine.InsertQuarter();
            machine.EjectQuarter();
            machine.TurnCrank();

            Console.WriteLine(machine);

            machine.InsertQuarter();
            machine.TurnCrank();
            machine.InsertQuarter();
            machine.TurnCrank();
            machine.EjectQuarter();

            Console.WriteLine(machine);

            machine.InsertQuarter();
            machine.InsertQuarter();
            machine.TurnCrank();
            machine.InsertQuarter();
            machine.TurnCrank();
            machine.InsertQuarter();
            machine.TurnCrank();

            Console.WriteLine(machine);
        }
Beispiel #4
0
        static void Main(string[] args)
        {
            GumballMachine gumballMachine = new GumballMachine(5);

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.EjectQuarter();
            gumballMachine.TurnCrank();

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.EjectQuarter();

            Console.WriteLine(gumballMachine);

            gumballMachine.InsertQuarter();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();
            gumballMachine.InsertQuarter();
            gumballMachine.TurnCrank();

            Console.WriteLine(gumballMachine);
        }
Beispiel #5
0
        // Говорится что каждое состояние закрыто для изменения, однако сам автомат открыт для расширения, но как оно закрыто, если везде public?!
        static void Main(string[] args)
        {
            GumballMachine gumballMachine = new GumballMachine(5);

            Console.WriteLine($"Состояние автомата: {gumballMachine.State}");

            // Бросаем монету
            gumballMachine.InsertQuarter();

            // Дергаем за рычаг [требуем шарик] (выдает шарик)
            gumballMachine.TurnCrank();

            Console.WriteLine($"Состояние автомата: {gumballMachine.State}");

            // Бросаем монету
            gumballMachine.InsertQuarter();

            // Забираем монету
            gumballMachine.EjectQuarter();

            // Дергаем за рычаг [требуем шарик] (не выдает шарик)
            gumballMachine.TurnCrank();

            Console.WriteLine($"Состояние автомата: {gumballMachine.State}");

            // Бросаем монету
            gumballMachine.InsertQuarter();

            // Бросаем монету
            gumballMachine.InsertQuarter();

            // Дергаем за рычаг [требуем шарик] (выдает шарик)
            gumballMachine.TurnCrank();

            // Бросаем монету
            gumballMachine.InsertQuarter();

            // Дергаем за рычаг [требуем шарик] (выдает шарик)
            gumballMachine.TurnCrank();

            // Бросаем монету
            gumballMachine.InsertQuarter();

            // Дергаем за рычаг [требуем шарик] (выдает шарик)
            gumballMachine.TurnCrank();

            Console.WriteLine($"Состояние автомата: {gumballMachine.State}");
        }