#c_sharp
Закрыт. Этот вопрос не по теме. Ответы на него в данный момент не принимаются. Хотите улучшить этот вопрос? Переформулируйте вопрос, чтобы он соответствовал тематике «Stack Overflow на русском». Закрыт 3 года назад. Знакомому на собеседовании дали задание, объяснить почему не работает код, в общем, собеседование он так и не прошел, а над тестовым заданием мы решили вместе посидеть, своими силами ни к какому толковому результату не пришли, может вы сможете подсказать что тут не так. Код компилируется, но ниразу не выполняется. class MiddleTask { delegate bool Comparer(int a, int b); delegate void Executer(string message); static int MaxValue(int a, int b, Comparer comp) { return comp(a, b) ? a : b; } static void TExecute(int cicle, Executer method) { var inc = 0; while (inc <--cicle) { method("Execute method-comparer"); } } static void Main(string[] args) { Trace.WriteLine("Entry point..."); TExecute(3, (dy) => { var targetRangeModel = new { range = 0, comparerPrefix = "Compare result:" }; var index = 0; var target = 20; while (index-- > targetRangeModel.range && target-- > index) { Trace.WriteLine(targetRangeModel.comparerPrefix + ">>>" + MaxValue(22, 15, (x, y) => { return (x > y) ? true : false; } ) ); } });
Ответы
Ответ 1
У вас ни разу не выполняется цикл while (index-- > targetRangeModel.range && target-- > index) Т.к. условие index-- > targetRangeModel.range всегда будет ложно
Комментариев нет:
Отправить комментарий