Генератор случайных чисел
Случайная величина - это некоторая переменная, принимающая одно из множества значение с определенной вероятностью.
Забавно то, что человек не способен генерировать случайные числа. Поэтому математики с компьютерщиками и придумали генератор случайных чисел. Правда и компьютер не идеально справляется с этой задачей… Но важнее то, что и в CourseLab он доступен и для курсов его вполне достаточно.
Зачем он нужен?
Вот, например, стандартный объект Вопрос.
Всем хорош! Прост в использовании, настраивается как хочешь, данные сохраняет в разных видах. Но скучноват.
Ставим флажок «Показывать варианты в случайном порядке», они перемешиваются. Становится интереснее, но все равно не то.
Поэтому многие разработчики и мы, в том числе, стараемся делать нестандартные упражнения. Но главный минус таких самоделок – «статичность» - отсутствие возможности перемешивать варианты, показывать разные наборы. Одним словом случайности. А любая игра без нее вообще не игра.
Так вот, чтоб внести эту «случайность» и нужен генератор случайных чисел.
Если вы видели нашу работу на Конкурсе курсов 2012 (а если нет, можно посмотреть здесь), то заметили, что при проведении эксперимента в виртуальной биолаборатории 15.05, 02.06, 08.07, 08.08 и тд выпадают осадки. Что будет снег или дождь, как раз и управляет генератор случайных чисел или, говоря языком КурсЛаба, функция Math.random(). Она возвращает случайное число в диапазоне от 0 до 1. Но следует помнить, что в числах количество цифр после запятой очень много – читай множество бесконечно большое. 0 и 1 в это множество не входят. Хотите получать целые числа больше 1 - умножайте, округляйте.
Отлично! Внесли интригу. Но теперь реалистичности не хватает. Все происходит на Крайнем Севере и там вероятность снега весной значительно выше, чем дождя. А летом, по легенде, одинаково вероятны. Получается непредсказуемостью созданной генератором случайных чисел надо управлять. И это возможно!
Предположим что вероятность снега весной и осенью 0,8, а летом - 0,5.
Тогда:
Как видно из рисунка все реализовано на стандартных Действиях КурсЛаба. Однако можно добавить Действие JAVASCRIPT и написать код.
Вот еще пример – еще одна вариация на тему «Поле чудес» (первую я показал здесь)
Надо чтобы после вращения барабана показывались случайным образом 2-3 буквы.
В некую переменную (hu) задаем случайное целое число от 1 до 16 – порядковой номер буквы.
Посмотреть, что получилось можно здесь.
Предупреждение. Упражнение сложное! Зашифровано словосочетание – много букфф. Подсказок и обратной связи нет. Это задание делалось для очного тренинга, и все необходимые комментарии дает тренер.
PS. Несколько последних лет мы пытаемся перенести отдельные приемы и упражнения из практики очных тренеров в дистанционные курсы. Теперь мы пошли в обратном направлении – делаем курсы (не уверен, что в данном контексте слово «курсы» уместно), которые являются мультимедийной поддержкой работы тренера в группе. О том, что из этого получилось как-нибудь напишу.
Забавно то, что человек не способен генерировать случайные числа. Поэтому математики с компьютерщиками и придумали генератор случайных чисел. Правда и компьютер не идеально справляется с этой задачей… Но важнее то, что и в CourseLab он доступен и для курсов его вполне достаточно.
Зачем он нужен?
Вот, например, стандартный объект Вопрос.
Всем хорош! Прост в использовании, настраивается как хочешь, данные сохраняет в разных видах. Но скучноват.
Ставим флажок «Показывать варианты в случайном порядке», они перемешиваются. Становится интереснее, но все равно не то.
Поэтому многие разработчики и мы, в том числе, стараемся делать нестандартные упражнения. Но главный минус таких самоделок – «статичность» - отсутствие возможности перемешивать варианты, показывать разные наборы. Одним словом случайности. А любая игра без нее вообще не игра.
Так вот, чтоб внести эту «случайность» и нужен генератор случайных чисел.
Если вы видели нашу работу на Конкурсе курсов 2012 (а если нет, можно посмотреть здесь), то заметили, что при проведении эксперимента в виртуальной биолаборатории 15.05, 02.06, 08.07, 08.08 и тд выпадают осадки. Что будет снег или дождь, как раз и управляет генератор случайных чисел или, говоря языком КурсЛаба, функция Math.random(). Она возвращает случайное число в диапазоне от 0 до 1. Но следует помнить, что в числах количество цифр после запятой очень много – читай множество бесконечно большое. 0 и 1 в это множество не входят. Хотите получать целые числа больше 1 - умножайте, округляйте.
Отлично! Внесли интригу. Но теперь реалистичности не хватает. Все происходит на Крайнем Севере и там вероятность снега весной значительно выше, чем дождя. А летом, по легенде, одинаково вероятны. Получается непредсказуемостью созданной генератором случайных чисел надо управлять. И это возможно!
Предположим что вероятность снега весной и осенью 0,8, а летом - 0,5.
Тогда:
Как видно из рисунка все реализовано на стандартных Действиях КурсЛаба. Однако можно добавить Действие JAVASCRIPT и написать код.
Вот еще пример – еще одна вариация на тему «Поле чудес» (первую я показал здесь)
Надо чтобы после вращения барабана показывались случайным образом 2-3 буквы.
В некую переменную (hu) задаем случайное целое число от 1 до 16 – порядковой номер буквы.
Посмотреть, что получилось можно здесь.
Предупреждение. Упражнение сложное! Зашифровано словосочетание – много букфф. Подсказок и обратной связи нет. Это задание делалось для очного тренинга, и все необходимые комментарии дает тренер.
PS. Несколько последних лет мы пытаемся перенести отдельные приемы и упражнения из практики очных тренеров в дистанционные курсы. Теперь мы пошли в обратном направлении – делаем курсы (не уверен, что в данном контексте слово «курсы» уместно), которые являются мультимедийной поддержкой работы тренера в группе. О том, что из этого получилось как-нибудь напишу.