Проблема с методом ниже. Текущая ошибка, которую я получаю, это «она не возвращает никакого значения». Если я помещаю возвращаемое число вне скобок, оно не существует в текущем контексте. Если удалить скобки все вместе я получаю:Использование случайного rnd внутри метода вызывает несколько ошибок
Встроенный оператор не может быть декларация или помеченный оператор Название «RND» не существует в текущем контексте
Я сделал несколько методов, прежде чем без этого вопрос. Что мне не хватает?
public static int generateNumber(int timesUserWantsToGuess)
{
for (int i = 0; i <= timesUserWantsToGuess; i++)
{
Random rnd = new Random();
int num = rnd.Next(1, 50);
return num;
}
}
Что происходит, когда 'timesUserWantsToGuess = 0'? Компилятор просто отвергает эту возможность. Сначала исправьте первую ошибку и, пожалуйста, * search * для сообщений об ошибках. – user2864740
Что вы пытаетесь выполнить с помощью этого метода? Если 'timesUserWantsToGuess' равно 0, цикл не вернет значение. Если 'timesUserWantsToGuess' => 1, то цикл будет выполнен только один раз. Тогда есть целая проблема с объявлением новой «Случайной» на итерацию, которая собирается (более чем вероятно) производить одно и то же случайное число. – Cameron
Также рассмотрите случай, когда 'timesUserWantsToGuess <0'.Компилятор не знает, что это недопустимое значение для передачи этой функции. –