День добрый, товарищи. В этой публикации мы познакомимся со случайными (рандомными) числами, а так же напишем простой генератор оных.
Кроме того, это последняя статья цикла о синтаксисе паскаля. Остальные вы можете посмотреть ниже.
Все ссылки прикрепляю:
Рассмотрим две команды языка для создания рандомных чисел:
Процедура randomize;
Функция random();
Пусть они и похожи, но служат для разных целей. Начнем, конечно же, со второго!
1. Обычный random
Итак, смотрим:
Объявляем переменную типа риал, и задаем переменной у рандомное значение. Команда random возвращает случайное значение от 0 до 1, а функцией round я просто округляю это число до 3 знаков после запятой. Вы можете не округлять, но получится каша.
Но что же это такое? Случайное значение от 0 до 1 это слишком мало и узкоспециализировано! Что делать? Может быть умножать полученное значение на 10, 100 и так далее?
Да нет, зачем, ведь рандому можно задать диапазоны.
2. Диапазоны функции random
Тип данных здесь мы поставим integer, чтобы не было мешанины лишних циферок в конце. В переменную х мы вводим диапазон чисел, у нас это от 0 до 15, но можно, конечно же, поставить хоть до 150000, как вам угодно.
Важно заметить, что в данном случае диапазон будет содержать 15 чисел: от 0 до 14, не включая 15. Тоесть, сколько бы раз вы не запустили программу, 15 вы все равно не получите. Для того, чтобы 15 было включено - границы должны быть такие: 0 - 16.
Более подробно систему счета в языках программирования мы разберем в теме массивов. сейчас стоит запомнить, что отсчет идет от 0, а не от единицы. Тоесть 1 - это уже второе число по счету.
3. А что, если нам нужны числа больше/меньше 0?
Действительно, до этого я говорил о диапазоне от 0 до числа х. А если я хочу от условного -5 до х? или от 10 до х? Опять таки не проблема!
Просто перед числом х вы задаете отправную точку вашего набора рандомных чисел. Теперь это будет выглядеть так: от -5 до 5.
4. Зачем нужен randomize?
Обычно random и randomize используются вместе. Смысл вот в чем: при первом запуске у вас создается готовый набор случайных чисел, и при последующих запусках, без функции randomize, случайное число будет одним и тем же. Randomize призвана решить эту проблему - чтобы каждый запуск был поистене уникальным событием!
Думаю на данный момент это все, что я хотел бы рассказать о рандомно-случайных числах. Тогда, когда мы изучим циклы - мы сможем легко создать функционал сайта random.org с выбором количества случайных чисел, а так же их диапазона. Легко. На сегодня все!
Данный человек всегда открыт для обсуждения контента и общения с подписчиками, если найдутся какие либо вопросы то я обязательно постараюсь ответить на них.
По возможности я попросил бы подписаться. Сейчас это критически важно для развития канала. Так то!
Доброго вам всем здоровьица в эти трудные времена!