A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://cplusplus.com/reference/random/independent_bits_engine/discard/ below:

public member function

<random>

std::independent_bits_engine::discard
void discard (unsigned long long z);

Advance internal state

Advances the internal state by z notches, as if operator() was called z times, but without generating any numbers in the process.

The effects on the state sequence are the same as if the transition algorithm was applied z times on subsequent elements.



Parameters
z
Number of equivalent advances.

Return value None

Example
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// independent_bits_engine::discard
#include <iostream>
#include <chrono>
#include <cstdint>
#include <random>

int main ()
{
  // obtain a seed from the system clock:
  unsigned seed = std::chrono::system_clock::now().time_since_epoch().count();

  std::independent_bits_engine<std::mt19937,64,std::uint_fast64_t> generator (seed);

  std::cout << "Random value: " << generator() << std::endl;

  generator.discard(1);  // discard one element

  std::cout << "Random value: " << generator() << std::endl;

  return 0;
}

Possible output:
Random value: 13760645581718272663
Random value: 451864462774584642


Complexity Linear in z.

See also
independent_bits_engine::operator()
Generate random number (public member function)

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4