Одинарный вывод сообщения в цикле foreach - C#

Узнай цену своей работы

Формулировка задачи:

Есть некий код банкомата, где пользователю необходимо сначала ввести свой ид.
            Bankomat[] banks = new Bankomat[] { new Bankomat(146251, 1500, 15, "Петров Иван Иванович"),
                                                new Bankomat(146252, 3400, 80, "Сергеев Александр Сергеевич"),
                                                new Bankomat(146253, 710, 55, "Леонтьев Петр Евгеньевич")};
 
            Console.Write("Введите ваш id пожалуйста: ");
 
            int id = Convert.ToInt32(Console.ReadLine());
            string Y = "Y";
            int money = 0;
            string acc = "";
 
            foreach (Bankomat x in banks)
                if (id == x.id)
                {
                   ..../*Тут не важно*/
                }
                else
                {
                    Console.Write("Вы еще не зарегистрированы в нашей системе, обратитесь к оператору \n");
                    break;
                }
Если ввести ид Петра Евгеньевича, то сначала 2 раза выведет, что я не зарегистрирован, а потом работа с банкоматом. Как нормально сделать?

Решение задачи: «Одинарный вывод сообщения в цикле foreach»

textual
Листинг программы
            Bankomat[] banks = new Bankomat[] { new Bankomat(146251, 1500, 15, "Петров Иван Иванович"),
                                                new Bankomat(146252, 3400, 80, "Сергеев Александр Сергеевич"),
                                                new Bankomat(146253, 710, 55, "Леонтьев Петр Евгеньевич")};
 
            Console.Write("Введите ваш id пожалуйста: ");
 
            int id = Convert.ToInt32(Console.ReadLine());
            string Y = "Y";
            int money = 0;
            string acc = "";
 
            foreach (Bankomat x in banks)
                if (id == x.id)
                {
                    Console.WriteLine($"Здравствуйте {x.name}, вы находитесь на {Bankomat.adress}.");
                    while (Y == "Y"|| Y=="y")
                    {
                        Console.WriteLine("Какую операцию желаете совершить? \n   1 - Проверить баланс \n   2 - " +
                            "Снять деньги \n   3 - Зачислить деньги \n   4 - Переконвертировать деньги ");
                        string operation = Console.ReadLine();
                        switch (operation)
                        {
                            case "1":
                                x.Balance();
                                break;
                            case "2":
                                Console.WriteLine("С каким счетом работаем? Ru/Usd");
                                acc = Console.ReadLine();
                                if (acc == "Ru"||acc == "ru")
                                {
                                    Console.WriteLine("Какую сумму желаете снять?");
                                    money = Convert.ToInt32(Console.ReadLine());
                                    x.WithdrawMoneyRu(money);
                                }
                                else if (acc == "Usd" || acc == "usd")
                                {
                                    Console.WriteLine("Какую сумму желаете снять?");
                                    money = Convert.ToInt32(Console.ReadLine());
                                    x.WithdrawMoneyUsd(money);
                                }
                                else
                                {
                                    Console.WriteLine("С такими валютами мы не работаем, проведите процедуру снова!");
                                }
                                break;
                            case "3":
                                Console.WriteLine("С каким счетом работаем? Ru/Usd");
                                acc = Console.ReadLine();
                                if (acc == "Ru" || acc == "ru")
                                {
                                    Console.WriteLine("Какую сумму желаете внести?");
                                    money = Convert.ToInt32(Console.ReadLine());
                                    x.DepositMoneyRu(money);
                                }
                                else if (acc == "Usd" || acc == "usd")
                                {
                                    Console.WriteLine("Какую сумму желаете внести?");
                                    money = Convert.ToInt32(Console.ReadLine());
                                    x.DepositMoneyUsd(money);
                                }
                                else
                                {
                                    Console.WriteLine("С такими валютами мы не работаем, проведите процедуру снова!");
                                }
                                break;
                            case "4":
                                Console.WriteLine("Что хотите переконвертировать? Ru/Usd");
                                acc = Console.ReadLine();
                                if (acc == "Ru" || acc == "ru")
                                {
                                    Console.WriteLine("Какую сумму будем конвертировать?");
                                    money = Convert.ToInt32(Console.ReadLine());
                                    x.ConvertToUsd(money);
                                }
                                else if (acc == "Usd" || acc == "usd")
                                {
                                    Console.WriteLine("Какую сумму будем конвертировать?");
                                    money = Convert.ToInt32(Console.ReadLine());
                                    x.ConvertToRu(money);
                                }
                                else
                                {
                                    Console.WriteLine("С такими валютами мы не работаем, проведите процедуру снова!");
                                }
                                break;
                        }
 
                        Console.WriteLine("Хотите выполнить еще операцию? Y/N");
                        Y = Console.ReadLine();
                    }
                }
                else
                {
                    Console.Write("Вы еще не зарегистрированы в нашей системе, обратитесь к оператору \n");
                    break;
                }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.429 из 5
Похожие ответы