Esempio n. 1
0
        public void showMenu()
        {
            Console.Clear();
            Console.WriteLine("Ваш депозит: " + moneyHolder.deposit.ToString() + "\n\n" +
                              "Внесите необходимую сумму, напечатайте цифру нужого вам товара и нажмите ввод. \n");

            int i = 1;

            foreach (Product product in stockpile.getProducts())
            {
                Console.WriteLine((i++) + ": " + product.name + " " + "Стоймость: " + product.rublePrice + " " + "Остаток: " + product.rest);
            }

            Console.WriteLine((i++) + ": " + "Вернуть сдачу");
            Console.WriteLine("0" + ": " + "Выйти из программы");

            Console.WriteLine("\n");
            Console.WriteLine("Симулировать добавление монетки \n");

            Console.WriteLine("5: 1 рубль \n" +
                              "6: 2 рубля \n" +
                              "7: 5 рублей \n" +
                              "8: 10 рублей \n");

            Console.WriteLine("Осталось мелочи в автомате: \n"
                              + "монета 1 рубль: " + moneyHolder._coinsBox.oneRubleCoinsCount + "\n"
                              + "монета 2 рубля: " + moneyHolder._coinsBox.twoRubleCoinsCount + "\n"
                              + "монета 5 рублей: " + moneyHolder._coinsBox.fiveRubleCoinsCount + "\n"
                              + "монета 10 рублей: " + moneyHolder._coinsBox.tenRubleCoinsCount + "\n");
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            initialization();

            do
            {
                view.showMenu();

                switch (view.readInput())
                {
                case 1:
                    if (stockpile.getProducts()[0].rest > 0)
                    {
                        if (moneyHolder.tryWithdrawMoney(stockpile.getProducts()[0].rublePrice))
                        {
                            view.showSuccesfulBuyMessage(stockpile.getProducts()[0]);
                            stockpile.getProducts()[0].giveOne();
                        }
                        else
                        {
                            view.showNotEnoughMoneyMessage(stockpile.getProducts()[0]);
                        }
                    }
                    else
                    {
                        view.showNotEnoughProductsMessage(stockpile.getProducts()[0]);
                    }
                    break;

                case 2:
                    if (stockpile.getProducts()[1].rest > 0)
                    {
                        if (moneyHolder.tryWithdrawMoney(stockpile.getProducts()[1].rublePrice))
                        {
                            view.showSuccesfulBuyMessage(stockpile.getProducts()[1]);
                            stockpile.getProducts()[1].giveOne();
                        }
                        else
                        {
                            view.showNotEnoughMoneyMessage(stockpile.getProducts()[1]);
                        }
                    }
                    else
                    {
                        view.showNotEnoughProductsMessage(stockpile.getProducts()[1]);
                    }
                    break;

                case 3:
                    if (stockpile.getProducts()[2].rest > 0)
                    {
                        if (moneyHolder.tryWithdrawMoney(stockpile.getProducts()[2].rublePrice))
                        {
                            view.showSuccesfulBuyMessage(stockpile.getProducts()[2]);
                            stockpile.getProducts()[2].giveOne();
                        }
                        else
                        {
                            view.showNotEnoughMoneyMessage(stockpile.getProducts()[2]);
                        }
                    }
                    else
                    {
                        view.showNotEnoughProductsMessage(stockpile.getProducts()[2]);
                    }
                    break;

                case 4: if (!moneyHolder.giveResidue())
                    {
                        view.showHasNotResidueMessage();
                    }
                    break;

                case 5:
                    moneyHolder.addCoin(Coins.one);
                    break;

                case 6:
                    moneyHolder.addCoin(Coins.two);
                    break;

                case 7:
                    moneyHolder.addCoin(Coins.five);
                    break;

                case 8:
                    moneyHolder.addCoin(Coins.ten);
                    break;

                case 0:
                    appRunning = false;
                    break;

                default: view.showNotChosenMenuItemMessage();
                    break;
                }
            } while (appRunning);
        }