Как сделать чтобы при генерации Random.Range(2, 15) сделать чтобы числа 5 и 11 не могли сгенерироваться то есть только числа
2 3 4 6 7 8 9 10 12 13 14 15 могли сгенриться!
Универсальный код для шарпа:
var _rand = new System.Random();//вообще эту штуку лучше вывести ЗА метод и не плодить инстансы этого класса внутри методов
private int RandomFromRangeWithExceptions(int rangeMin, int rangeMax, params int[] exclude)//exclude -- список чисел которые НЕ должны входить в результат
{
var range = Enumerable.Range(rangeMin, rangeMax).Where(i => !exclude.Contains(i));//создаем колекцию допустимых значений
int index = _rand.Next(rangeMin, rangeMax - exclude.Count);//генерируем индекс ячейки
return range.ElementAt(index);//возвращаем значение ячейки
}
Код оптимизированный под юнити:
private int RandomFromRangeWithExceptions(int rangeMin, int rangeMax, params int[] exclude)//exclude -- список чисел которые НЕ должны входить в результат
{
var range = Enumerable.Range(rangeMin, rangeMax).Where(i => !exclude.Contains(i));//создаем колекцию допустимых значений
int index = Random.Range(rangeMin, rangeMax - exclude.Count);//генерируем индекс ячейки
return range.ElementAt(index);//возвращаем значение ячейки
}
пример вызова:
RandomFromRangeWithExceptions(2, 15, 5, 11);
или
RandomFromRangeWithExceptions(1, 100, 5, 11, 14, 2, 99, 48);
Код базируется на этом ответе: https://stackoverflow.com/a/18485399/4423545
Код изменялся и не проверялся на наличие ошибок, но все должно пахать.
PS: Для удобства использования можно замутить этот метод как расширение к классу Random в случае Юнити.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Подскажите, пожалуйста, как можно создать таблицу рекордов в Windows FormsПишу игру "Сапер"
Допустим у меня есть переменная int N = 19; Если я её поделю на 2 - получится 9,5 и выйдет ошибка (нужно что бы тип переменной оставался int)Есть еще...
Visual Studio не видит и не подсвечивает полеНо в окошке с просмотрами элементов файла он есть
У меня есть приложение на C# можно ли в него зашить python скрипт? Чтобы он сразу подгружался с кодом?