Вывод в консоль без множества операторов ветвления - C#

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

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

Добрый день, подскажите как можно реализовать вывод в консоль без множества операторов ветвления. Какие шаблоны проектирования лучше использовать,что бы избежать чрезмерного количества if. Каким образом можно убрать зависимость и повысить гибкость кода? Спасибо.
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace ConsoleApplication1
  7. {
  8. class Machine
  9. {
  10. private Dictionary<int, string> _cars;
  11. public Machine(Dictionary<int,string> Cars)
  12. {
  13. _cars = Cars;
  14. }
  15. public void Show()
  16. {
  17. foreach (KeyValuePair<int, string> CarItem in _cars)
  18. {
  19. if (CarItem.Key == 1)
  20. {
  21. Console.WriteLine("{0}, {1}, 100$", CarItem.Key, CarItem.Value);
  22. }
  23. if (CarItem.Key == 2)
  24. {
  25. Console.WriteLine("{0}, {1}, 300$", CarItem.Key, CarItem.Value);
  26. }
  27. if (CarItem.Key == 3)
  28. {
  29. Console.WriteLine("{0}, {1}, 500$", CarItem.Key, CarItem.Value);
  30. }
  31. if (CarItem.Key == 4)
  32. {
  33. Console.WriteLine("{0}, {1}, 900$", CarItem.Key, CarItem.Value);
  34. }
  35. if (CarItem.Key == 5)
  36. {
  37. Console.WriteLine("{0}, {1}, 1$", CarItem.Key, CarItem.Value);
  38. }
  39. }
  40. }
  41. }
  42. class Program
  43. {
  44. static void Main(string[] args)
  45. {
  46. Dictionary<int, string> CarDictionary = new Dictionary<int, string>();
  47. CarDictionary.Add(1,"Monocycl");
  48. CarDictionary.Add(2,"Bicycle");
  49. CarDictionary.Add(3,"Bike");
  50. CarDictionary.Add(4,"Car");
  51. CarDictionary.Add(5,"Lada Kalina");
  52. Machine Test = new Machine(CarDictionary);
  53. Test.Show();
  54. }
  55. }
  56. }

Решение задачи: «Вывод в консоль без множества операторов ветвления»

textual
Листинг программы
  1.         public void Show()
  2.         {
  3.             int i = 0;
  4.             foreach (Car car in _cars)
  5.             {
  6.                  Console.WriteLine("{0}\t{1}\t{2}", ++i, car.Name, car.Price);
  7.             }
  8.         }

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


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

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

13   голосов , оценка 4 из 5

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

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

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