A RetroSearch Logo

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

Search Query:

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

public member function

<random>

std::subtract_with_carry_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 as many times as notches advanced 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
// subtract_with_carry_engine::discard
#include <iostream>
#include <chrono>
#include <random>

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

  std::subtract_with_carry_engine<unsigned,24,10,24> generator (seed);

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

  return 0;
}

Possible output:
Random value: 14872181
Random value: 5758068


Complexity Linear in z.

See also
subtract_with_carry_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