Вывод записей из списка. Ошибка - C#

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

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

Подскажите пожалуйста, проблема с выводом, прошу помощи.) Заранее спасибо..
Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. namespace lab_16___2
  7. {
  8. class Books
  9. {
  10. public string Name { get; set; }
  11. public string Publisher { get; set; }
  12. public string YearPublisher { get; set; }
  13. }
  14. class Program
  15. {
  16. public static string Menu(string selection)
  17. {
  18. Console.ForegroundColor = ConsoleColor.Yellow;
  19. Console.WriteLine("Меню:\n1.Ввода записей в список.\n2.Вывод записей из списка.\n3.Добавление записи в список.\n4.Очистка.\n5.Выход.");
  20. Console.ForegroundColor = ConsoleColor.White;
  21. selection = Console.ReadLine();
  22. while (selection != "1" && selection != "2" && selection != "3" && selection != "4" && selection != "5")
  23. {
  24. Console.ForegroundColor = ConsoleColor.Red;
  25. Console.WriteLine("Некорректный ввод.");
  26. Console.ForegroundColor = ConsoleColor.White;
  27. selection = Console.ReadLine();
  28. }
  29. return selection;
  30. }
  31. static void Main(string[] args)
  32. {
  33. List<Books> bibl = new List<Books>();
  34. string selection = string.Empty;
  35. int count = 1, counter = 1, counter2 = 0;
  36. ConsoleKeyInfo x;
  37. Console.ForegroundColor = ConsoleColor.White;
  38. while (selection != "5")
  39. {
  40. selection = Menu(selection);
  41. switch (selection)
  42. {
  43. case "1":
  44. do
  45. {
  46. Console.ForegroundColor = ConsoleColor.Yellow;
  47. Console.WriteLine("\nВведите {0}-ю запись", count);
  48. Console.WriteLine("Введите имя издателя: ");
  49. bibl.Add(new Books() { Name = Console.ReadLine() });
  50. Console.WriteLine("Введите автор книги:");
  51. bibl.Add(new Books() { Publisher = Console.ReadLine() });
  52.  
  53. Console.WriteLine("Введите год издания: ");
  54. bibl.Add(new Books() { YearPublisher = Console.ReadLine() });
  55. ++count;
  56. Console.ForegroundColor = ConsoleColor.White;
  57. Console.WriteLine("ESC - для прекращения ввода; ENTER - продолжить;");
  58. x = Console.ReadKey(true);
  59. if (x.Key == ConsoleKey.Escape && count <= 1)
  60. {
  61. Console.ForegroundColor = ConsoleColor.Red;
  62. Console.WriteLine("(ENTER) Введено меньше 5-ти значений. Повторите ввод, пока кол-во значений не будет равно 5.");
  63. x = Console.ReadKey(false);
  64. Console.ForegroundColor = ConsoleColor.White;
  65. }
  66. }
  67. while (x.Key != ConsoleKey.Escape);
  68. break;
  69. case "2":
  70. Console.WriteLine("Вывод записей:");
  71. foreach(Books b in bibl)
  72. {
  73. counter2++;
  74. Console.WriteLine("\nИздатель[{0}] = {1} \nАвтор[{0}] = {2} \nГод[{0}] = {3}",counter,b.Name,b.Publisher,b.YearPublisher);
  75. if (counter2 % 3 == 0)
  76. {
  77. counter++;
  78. }
  79. }
  80. break;
  81. case "3":
  82. do
  83. {
  84. Console.WriteLine("\nВведите {0}-ю запись", count);
  85. Console.WriteLine("Введите имя издателя: ");
  86. bibl.Add(new Books() { Name = Console.ReadLine() });
  87. Console.WriteLine("Введите автор книги:");
  88. bibl.Add(new Books() { Publisher = Console.ReadLine() });
  89.  
  90. Console.WriteLine("Введите год издания: ");
  91. bibl.Add(new Books() { YearPublisher = Console.ReadLine() });
  92. ++count;
  93. Console.WriteLine("ESC - для прекращения ввода; ENTER - продолжить;");
  94. x = Console.ReadKey(true);
  95. if (x.Key == ConsoleKey.Escape && bibl.Count() < 5)
  96. {
  97. Console.ForegroundColor = ConsoleColor.Red;
  98. Console.WriteLine("(ENTER) Введено меньше 5-ти значений. Повторите ввод, пока кол-во значений не будет равно 5.");
  99. x = Console.ReadKey(false);
  100. Console.ForegroundColor = ConsoleColor.White;
  101. }
  102. }
  103. while (x.Key != ConsoleKey.Escape);
  104. break;
  105. case "4":
  106. Console.Clear();
  107. break;
  108. case "5":
  109. Environment.Exit(0);
  110. break;
  111. }
  112. }
  113. Console.ReadKey();
  114. }
  115. }
  116. }
80 строка, чет я запутался

Решение задачи: «Вывод записей из списка. Ошибка»

textual
Листинг программы
  1. Console.WriteLine("Вывод записей:");
  2. foreach (Books b in bibl)
  3. {
  4.     Console.WriteLine("\nКнига № {0}", ++counter2);
  5.     Console.WriteLine(b);
  6. }

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


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

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

8   голосов , оценка 4.375 из 5

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

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

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