Одинарный вывод сообщения в цикле foreach - C#
Формулировка задачи:
Есть некий код банкомата, где пользователю необходимо сначала ввести свой ид.
Если ввести ид Петра Евгеньевича, то сначала 2 раза выведет, что я не зарегистрирован, а потом работа с банкоматом. Как нормально сделать?
Листинг программы
- 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;
- }
Решение задачи: «Одинарный вывод сообщения в цикле 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;
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д