Код выполняется неверно - 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();

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


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

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

6   голосов , оценка 4.333 из 5
Похожие ответы