Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования стр.62
Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования стр.62 Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования

Генератор случайных чисел

Private Sub Buttonl_Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles Buttonl.Click

Dim a As Single

a = RndO

Labell.Text = a

End Sub

На первый взгляд эти числа никак не связаны между собой. Но если программу закрыть и запустить снова, результатом будет та же последовательность чисел. Значит, определенная закономерность существует. Чтобы ее отменить, то есть получить другую последовательность чисел, надо использовать инструкцию Randomize. Вот как выглядит код с использованием этого оператора:

Private Sub Buttonl__Click(ByVal sender As System.Object, _

ByVal e As System.EventArgs) Handles Buttonl.Click

Randomize()

Dim a As Single

a = RndO

Labell.Text = a

End Sub

Каждый раз, запуская данную программу, мы будем получать другую последовательность чисел. Эти случайные числа находятся в интервале от 0 до 1. Но как быть, если необходимо получить числа из другого диапазона, например от а до Ь. Для этого надо использовать так называемое линейное преобразование:

(b - а) * Rnd + а

В следующем примере мы получаем последовательность случайных чисел в диапазоне от 20 до 25:

Private Sub But tonl__C lick (ByVal sender As System. Object, _

ByVal e As System.EventArgs) Handles Buttonl.Click

Randomize()

Dim a As Single

a = (25 - 20) * RndO + 20

Labell.Text = a

End Sub

Чтобы получить целые случайные числа, необходимо использовать данные типа Integer. Например, в предыдущем

Трусов М. А. Visual Basic .NET. Создание графических объектов и основы программирования

ГЛАВА ЮТ Генератор случайных чисел

коде переменную а достаточно объявить так: Dim a As Integer. В качестве другого варианта можно использовать функцию CInt: а = Clnt((25-20) * Rnd( ) +20).

Нас интересуют только вопросы, связанные с созданием графики, поэтому рассмотрим еще один пример. Нарисуем на форме простую геометрическую фигуру и заставим ее принимать координаты, определенные программой как случайные числа. Эти числа находятся в интервале от 10 до 300.

Private Sub Button3_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button3.Click Dim a As Integer Dim b As Integer Randomize ()


⇐ Предыдущая Следующая ⇒
 
 
 
Powered by Exponenta