Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Оператор случайных чисел Добавлено: 19.03.05 22:53  

Автор вопроса:  Tigre
Народ, не подскажите как пользоваться оператором случайных чисел?

Ответить

  Ответы Всего ответов: 9  

Номер ответа: 1
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #1
Добавлено: 20.03.05 00:39
генератором что ли?

rnd - генерирует случайное число по-моему от нуля до еденицы. чтобы получить число от нуля до 100 надо сделать так:

n=rnd*100

или так
z=int(rnd*100)'чтобы число было целым


ВНИМАНИЕ!!!Ряд чисел при каждом запуске будет повторяться!!! чтобы этого не было надо в Form_Load написать слово Randomize !!!

Ответить

Номер ответа: 2
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #2 Добавлено: 20.03.05 14:48
ВНИМАНИЕ!!!Ряд чисел при каждом запуске будет повторяться!!! чтобы этого не было надо в Form_Load написать слово Randomize !!!


Добавлю:
Randomize Timer 'Это для верности

Ответить

Номер ответа: 3
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #3 Добавлено: 20.03.05 14:48
Добавлю:
Randomize Timer * Rnd 'Это для 100% верности :)))

Ответить

Номер ответа: 4
Автор ответа:
 Morpheus



Вопросов: 224
Ответов: 3777
 Web-сайт: xury.zx6.ru
 Профиль | | #4
Добавлено: 20.03.05 14:51
спасибо, сам не знал

Ответить

Номер ответа: 5
Автор ответа:
 Tigre



Вопросов: 34
Ответов: 63
 Профиль | | #5 Добавлено: 20.03.05 18:04
Это я знаю. А как, что-бы выдавал числа, скажем, от 1 до 3. А уже не раз его в своих прогах использовал. Каждый раз долго мучался и в конце концов "методом тыка" подбирал, а принцип синтаксиса понять не могу.

Ответить

Номер ответа: 6
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #6
Добавлено: 20.03.05 19:27

А как, что-бы выдавал числа, скажем, от 1 до 3.

Вот так:

Private Sub Form_Load()
Randomize Timer
For a = 1 To 100
 Debug.Print 1 + Int(3 * Rnd)
Next a
End Sub

 Если мне не изменяет память, то Int округляет в меньшую сторону (а FIX в большую). Отсюда и диапазон: от 0 до 2. Соответсвенно добавляем 1 и получаем от 1 до 3.

Ответить

Номер ответа: 7
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #7
Добавлено: 20.03.05 19:29
А, нет, я ошибся, отличия между INT и FIX проявляются только в отрицательных числах.

Both Int and Fix remove the fractional part of number and return the resulting integer value.

The difference between Int and Fix is that if number is negative, Int returns the first negative integer less than or equal to number, whereas Fix returns the first negative integer greater than or equal to number. For example, Int converts -8.4 to -9, and Fix converts -8.4 to -8.

Ответить

Номер ответа: 8
Автор ответа:
 CyRax



Разработчик Offline Client

ICQ: 204447456 

Вопросов: 180
Ответов: 4229
 Web-сайт: basicproduction.nm.ru
 Профиль | | #8
Добавлено: 20.03.05 19:32
Вот тебе формула для диапазона из MSDN:

To produce random integers in a given range, use this formula:

Int((upperbound - lowerbound + 1) * Rnd + lowerbound)

Ответить

Номер ответа: 9
Автор ответа:
 Tigre



Вопросов: 34
Ответов: 63
 Профиль | | #9 Добавлено: 21.03.05 17:09
Спасибо, буду пробывать.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам