• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Случайные числа

  • Автор темы ANN
  • Дата начала
A

ANN

Помогите пожалуйста задать случайную величину от 1 до 16 с математическим ожиданием 4, распределенную по экспотенциальному закону. :rolleyes:
 
A

ANN

А как задать тат.ожидание? и закон распределения? ведь random даст нам абсолютно случайную величину
 
E

etc

А как докжите, что 10 именно искомая случ. величина а 9 к примеру нет?
 
G

Guest

Если программируешь на visual basic 6.0, то алгоритм таков:
(случайное число) = (максимальное значение) * RND
пример:
Нам надо задать случайное число от 0 до 67 где "A" - переменная
Пишем:
dim A as single
A = Rnd * 67

Пример рзвернутый, где на форме у нас находится тестовое поле Text1 и кнопка Command1. В Text1 будет появляться результат от 0 до 2:
private sub Command1_Click()
text1.text = Rnd * 2
end sub

Ответ будет с "хвостом" после запятой. Чтобы его избежать можно воспользоваться следующим фокусом:
private sub Command1_Click()
text1.text = (Rnd * 2) \ 1
end sub

Знак "\" означает деление без остатка (не путать с "/", где деление происходит с остатком).
Вроде бы все что тебе нужно для хорошей жизни.
 
Z

Zato

Блин >_<, не хочу флудить, но наболело.

Вы на VB 6 что, совсем о типах переменных не задумываетесь. Я конечно понимаю, что компилятор сам прекрасно об этом позаботится, но ведь в других языках не всё так запущено, а значит вам будет очень сложно отвыкать.
Не стоит пренебрегать правильным переводом из типа в тип, и уж тем более не стоит придумывать свои фокусы, аля "здравствуй школа".

Задумайся над таким видом:
Код:
private sub Command1_Click()
Dim rand As Long
rand= (Rnd * 2)
text1.text =str(rand)
end sub
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!