Пространства имён
Варианты
Действия

std::geometric_distribution

Материал из cppreference.com

<metanoindex/>

 
 
 
Генерация псевдослучайных чисел
Генераторы равномерных случайных битов
Генераторы и адаптеры генераторов
Недетерминированный генератор
Распределения
Равномерные распределения
Распределения Бернулли
Распределения Пуассона
Нормальные распределения
Распределения выборки
Последовательности настройки
(C++11)
Библиотека C
 
std::geometric_distribution
Функции-члены
Поколение
Оригинал:
Generation
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Характеристики
Оригинал:
Characteristics
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Функции, не являющиеся членами
 
<tbody> </tbody>
Определено в заголовочном файле <random>
template< class IntType = int > class geometric_distribution;
(начиная с C++11)
Производит случайное неотрицательное целое число i значений, распределенных в соответствии с дискретной функции вероятности
Оригинал:
Produces random non-negative integer values i, distributed according to discrete probability function:
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
P(i|p) = p · (1 − p)i
Значение представляет собой количество да / нет исследований (каждый последующий с вероятностью p), необходимых для получения одного успеха.
Оригинал:
The value represents the number of yes/no trials (each succeeding with probability p) which are necessary to obtain a single success.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
std::geometric_distribution<>(p) в точности эквивалентен std::negative_binomial_distribution<>(1, p). Он также является дискретным аналогом std::exponential_distribution.
Оригинал:
std::geometric_distribution<>(p) is exactly equivalent to std::negative_binomial_distribution<>(1, p). It is also the discrete counterpart of std::exponential_distribution.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Типы-члены

Тип члена Определение
result_type IntType
param_type
Тип набора параметров, не указано
Оригинал:
the type of the parameter set, unspecified
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Функции-члены

строит новые распределения
Оригинал:
constructs new distribution
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-элемент) [править]
сбрасывает внутреннее состояние распределения
Оригинал:
resets the internal state of the distribution
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-элемент) [править]
Поколение
Оригинал:
Generation
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
генерирует следующее случайное число в распределении
(public функция-элемент) [править]
Характеристики
Оригинал:
Characteristics
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
возвращает р параметр распределения (вероятность true генерирующих судебное разбирательство)
Оригинал:
returns the p distribution parameter (probability of a trial generating true)
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-элемент) [править]
получает или задает объект распределения параметра
Оригинал:
gets or sets the distribution parameter object
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-элемент) [править]
возвращает минимальное потенциально сгенерированное значение
Оригинал:
returns the minimum potentially generated value
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-элемент) [править]
возвращает максимальное потенциально сгенерированное значение
Оригинал:
returns the maximum potentially generated value
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-элемент) [править]

Функции, не являющиеся членами

(C++11)(C++11)(удалено в C++20)
сравнивает два объекта распределения
(функция) [править]

выполняют потоковый вывод/ввод для объекта распределения псевдослучайных чисел
(функция) [править]

Пример

geometric_distribution <> (0,5) по умолчанию и представляет собой число бросков монеты, которые требуются, чтобы получить голову
Оригинал:
geometric_distribution<>(0.5) is the default and represents the number of coin tosses that are required to get heads
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

#include <iostream>
#include <iomanip>
#include <string>
#include <map>
#include <random>
int main()
{
    std::random_device rd;
    std::mt19937 gen(rd());

    std::geometric_distribution<> d; // same as std::negative_binomial_distribution<> d(1, 0.5);

    std::map<int, int> hist;
    for(int n=0; n<10000; ++n) {
        ++hist[d(gen)];
    }
    for(auto p : hist) {
        std::cout << p.first <<
                ' ' << std::string(p.second/100, '*') << '\n';
    }
}

Вывод:

0 *************************************************
1 *************************
2 ************
3 ******
4 **
5 *
6
7
8
9
10
11

Внешние ссылки

Weisstein, Eric W. "Geometric Distribution." С MathWorld - Ресурс Wolfram Web.
Оригинал:
Weisstein, Eric W. "Geometric Distribution." From MathWorld--A Wolfram Web Resource.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.