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

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

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

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

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

textual
Листинг программы
  1.             Bankomat[] banks = new Bankomat[] { new Bankomat(146251, 1500, 15, "Петров Иван Иванович"),
  2.                                                 new Bankomat(146252, 3400, 80, "Сергеев Александр Сергеевич"),
  3.                                                 new Bankomat(146253, 710, 55, "Леонтьев Петр Евгеньевич")};
  4.  
  5.             Console.Write("Введите ваш id пожалуйста: ");
  6.  
  7.             int id = Convert.ToInt32(Console.ReadLine());
  8.             string Y = "Y";
  9.             int money = 0;
  10.             string acc = "";
  11.  
  12.             foreach (Bankomat x in banks)
  13.                 if (id == x.id)
  14.                 {
  15.                     Console.WriteLine($"Здравствуйте {x.name}, вы находитесь на {Bankomat.adress}.");
  16.                     while (Y == "Y"|| Y=="y")
  17.                     {
  18.                         Console.WriteLine("Какую операцию желаете совершить? \n   1 - Проверить баланс \n   2 - " +
  19.                             "Снять деньги \n   3 - Зачислить деньги \n   4 - Переконвертировать деньги ");
  20.                         string operation = Console.ReadLine();
  21.                         switch (operation)
  22.                         {
  23.                             case "1":
  24.                                 x.Balance();
  25.                                 break;
  26.                             case "2":
  27.                                 Console.WriteLine("С каким счетом работаем? Ru/Usd");
  28.                                 acc = Console.ReadLine();
  29.                                 if (acc == "Ru"||acc == "ru")
  30.                                 {
  31.                                     Console.WriteLine("Какую сумму желаете снять?");
  32.                                     money = Convert.ToInt32(Console.ReadLine());
  33.                                     x.WithdrawMoneyRu(money);
  34.                                 }
  35.                                 else if (acc == "Usd" || acc == "usd")
  36.                                 {
  37.                                     Console.WriteLine("Какую сумму желаете снять?");
  38.                                     money = Convert.ToInt32(Console.ReadLine());
  39.                                     x.WithdrawMoneyUsd(money);
  40.                                 }
  41.                                 else
  42.                                 {
  43.                                     Console.WriteLine("С такими валютами мы не работаем, проведите процедуру снова!");
  44.                                 }
  45.                                 break;
  46.                             case "3":
  47.                                 Console.WriteLine("С каким счетом работаем? Ru/Usd");
  48.                                 acc = Console.ReadLine();
  49.                                 if (acc == "Ru" || acc == "ru")
  50.                                 {
  51.                                     Console.WriteLine("Какую сумму желаете внести?");
  52.                                     money = Convert.ToInt32(Console.ReadLine());
  53.                                     x.DepositMoneyRu(money);
  54.                                 }
  55.                                 else if (acc == "Usd" || acc == "usd")
  56.                                 {
  57.                                     Console.WriteLine("Какую сумму желаете внести?");
  58.                                     money = Convert.ToInt32(Console.ReadLine());
  59.                                     x.DepositMoneyUsd(money);
  60.                                 }
  61.                                 else
  62.                                 {
  63.                                     Console.WriteLine("С такими валютами мы не работаем, проведите процедуру снова!");
  64.                                 }
  65.                                 break;
  66.                             case "4":
  67.                                 Console.WriteLine("Что хотите переконвертировать? Ru/Usd");
  68.                                 acc = Console.ReadLine();
  69.                                 if (acc == "Ru" || acc == "ru")
  70.                                 {
  71.                                     Console.WriteLine("Какую сумму будем конвертировать?");
  72.                                     money = Convert.ToInt32(Console.ReadLine());
  73.                                     x.ConvertToUsd(money);
  74.                                 }
  75.                                 else if (acc == "Usd" || acc == "usd")
  76.                                 {
  77.                                     Console.WriteLine("Какую сумму будем конвертировать?");
  78.                                     money = Convert.ToInt32(Console.ReadLine());
  79.                                     x.ConvertToRu(money);
  80.                                 }
  81.                                 else
  82.                                 {
  83.                                     Console.WriteLine("С такими валютами мы не работаем, проведите процедуру снова!");
  84.                                 }
  85.                                 break;
  86.                         }
  87.  
  88.                         Console.WriteLine("Хотите выполнить еще операцию? Y/N");
  89.                         Y = Console.ReadLine();
  90.                     }
  91.                 }
  92.                 else
  93.                 {
  94.                     Console.Write("Вы еще не зарегистрированы в нашей системе, обратитесь к оператору \n");
  95.                     break;
  96.                 }

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


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

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

7   голосов , оценка 3.429 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы