Код выполняется неверно - C#
Формулировка задачи:
Есть класс танк который передает случайное действие. Эти действия записываются в словарь. При отладки с точкой останова код работает правильно и действию записываются. Но когда запускаю без остановки в словарь записываются всегда одинаковые действия.В чем может быть причина?
Листинг программы
- private List<ITank> tanks = new List<ITank>();
- var tankActionByTanks = tanks.Select(t => new KeyValuePair<ITank, Action>(t, t.GetAction(field))).ToDictionary(kvp => kvp.Key, kvp => kvp.Value);
Листинг программы
- class Tank : ITank
- {
- public Action GetAction(Field field)
- {
- Random random = new Random();
- int value = random.Next(5);
- if (value == 1)
- return Action.Back;
- else
- if (value == 2)
- return Action.TurnLeft;
- else
- if (value == 3)
- return Action.TurnRight;
- else
- if (value == 4)
- return Action.Forward;
- else
- return Action.Fire;
- }
- }
Решение задачи: «Код выполняется неверно»
textual
Листинг программы
- Random random = new Random();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д