Дмитрий
31 грудня 2020 р. 16:19

Генерація псевдовипадкових чисел Qt (QRandomGenerator)

Ця нотатка є невеликим доповненням до статті Генерація псевдовипадкових чисел із використанням випадкової бібліотеки STD . У ній автором втрачено одну з корисних функцій класу QRandomGenerator. Реалізація генератора така:

  1. QRandomGenerator *rg = QRandomGenerator::global();
  2. for(int i = 0; i < 10; i++) {
  3. qDebug() << rg->bounded(1, 10);
  4. }

Функція global() повертає покажчик готовий на роботу генератор випадкових чисел. Альтернативою є функція system(), що реалізує можливості по генерації випадкових чисел, закладені в операційній системі. Функція bounded(a, b) повертає випадкове число діапазону від a до b. Також нам доступні наступні функції: generateDouble() - повертає одне випадкове число з діапазону від 0 до 1, generate() і generate64() - повертають випадкове 32 та 64 розрядне випадкове число відповідно. Всі ці функції будуть повертати нову послідовність чисел при кожному своєму запуску/виклику.
На мій погляд, такий інструментарів здатний закрити всі потреби середньостатистичного програміста з генерації випадкових чисел без підключення сторонніх бібліотек.

Рекомендовані статті на цю тему

По статті запитували0питання

2

Вам це подобається? Поділіться в соціальних мережах!

Коментарі

Only authorized users can post comments.
Please, Log in or Sign up
  • Останні коментарі
  • Evgenii Legotckoi
    16 квітня 2025 р. 17:08
    Благодарю за отзыв. И вам желаю всяческих успехов!
  • IscanderChe
    12 квітня 2025 р. 17:12
    Добрый день. Спасибо Вам за этот проект и отдельно за ответы на форуме, которые мне очень помогли в некоммерческих пет-проектах. Профессиональным программистом я так и не стал, но узнал мно…
  • AK
    01 квітня 2025 р. 11:41
    Добрый день. В данный момент работаю над проектом, где необходимо выводить звук из программы в определенное аудиоустройство (колонки, наушники, виртуальный кабель и т.д). Пишу на Qt5.12.12 поско…
  • Evgenii Legotckoi
    09 березня 2025 р. 21:02
    К сожалению, я этого подсказать не могу, поскольку у меня нет необходимости в обходе блокировок и т.д. Поэтому я и не задавался решением этой проблемы. Ну выглядит так, что вам действитель…
  • VP
    09 березня 2025 р. 16:14
    Здравствуйте! Я устанавливал Qt6 из исходников а также Qt Creator по отдельности. Все компоненты, связанные с разработкой для Android, установлены. Кроме одного... Когда пытаюсь скомпилиров…