Произведите рандомизацию чисел в VB.NET без использования диапазона, т.е. Min и Max - PullRequest
3 голосов
/ 06 июля 2010

Мне было интересно, если кто-нибудь может указать мне правильное направление, пожалуйста? Скажем, я потянул за следующую таблицу, затем я хотел бы выбрать идентификатор случайно. Я понимаю, как выбрать случайное число с помощью вызова Randomize (), за которым следует соответствующий синтаксис, но я хочу предварительно определить диапазон.

т.е. Данные таблицы

ID | Имя

4345 Майк

3456 Ли

4567 Джон

Будет много других имен, но для этого примера вы можете использовать 3 или 4 и т. Д.

Пожалуйста, помогите, я начинаю зудеть: o |

Ответы [ 2 ]

2 голосов
/ 06 июля 2010

Просто чтобы убедиться, что я понимаю, что вы хотите:

Учитывая таблицу, вы хотите случайным образом выбрать одно из значений идентификатора из этой таблицы.

Если это так, это должно сделать это:

Dim rand As New Random()
Dim record As Integer = rand.[Next](0, myDataTable.Rows.Count)
Dim randomID As Integer = CInt(myDataTable.Rows(record)("ID"))

У нас есть вся информация, необходимая для случайного выбора строки и расширения случайным образом одного из значений ID в таблице.

0 голосов
/ 06 июля 2010

В старом Vb вы бы сделали

    Dim i as integer 

   i = (Rnd * (maxval-minval)) + minval

Поскольку rnd возвращает случайное число от 0 до 1, вы масштабируете число до нужного диапазона.

...