Beispiel #1
0
sseq
sseq::shift (int dh, int dq) const
{
  return sseq (sseq_bounds (bounds.minh + dh,
			    bounds.maxh + dh,
			    bounds.minq + dq,
			    bounds.maxq + dq),
	       pages);
}
int main()
{
    {
        unsigned a[] = {3, 5, 7};
        std::seed_seq sseq(a, a+3);
        std::linear_congruential_engine<unsigned, 5, 7, 11> e1;
        std::linear_congruential_engine<unsigned, 5, 7, 11> e2(4);
        assert(e1 != e2);
        e1.seed(sseq);
        assert(e1 == e2);
    }
    {
        unsigned a[] = {3, 5, 7, 9, 11};
        std::seed_seq sseq(a, a+5);
        typedef std::linear_congruential_engine<unsigned long long, 1, 1, 0x200000001ULL> E;
        E e1(4309005589);
        E e2(sseq);
        assert(e1 == e2);
    }
}
void
test1()
{
    unsigned a[] = {3, 5, 7};
    std::seed_seq sseq(a, a+3);
    std::knuth_b e1;
    std::knuth_b e2(sseq);
    assert(e1 != e2);
    e1.seed(sseq);
    assert(e1 == e2);
}
void
test2()
{
    unsigned a[] = {3, 5, 7};
    std::seed_seq sseq(a, a+3);
    std::independent_bits_engine<std::ranlux48, 64, unsigned long long> e1;
    std::independent_bits_engine<std::ranlux48, 64, unsigned long long> e2(sseq);
    assert(e1 != e2);
    e1.seed(sseq);
    assert(e1 == e2);
}
void
test1()
{
    unsigned a[] = {3, 5, 7};
    std::seed_seq sseq(a, a+3);
    std::independent_bits_engine<std::ranlux24, 32, unsigned> e1;
    std::independent_bits_engine<std::ranlux24, 32, unsigned> e2(sseq);
    assert(e1 != e2);
    e1.seed(sseq);
    assert(e1 == e2);
}
void
test2()
{
    unsigned a[] = {3, 5, 7};
    std::seed_seq sseq(a, a+3);
    std::ranlux48_base e1;
    std::ranlux48_base e2(sseq);
    assert(e1 != e2);
    e1.seed(sseq);
    assert(e1 == e2);
}
Beispiel #7
0
int main()
{
    {
        unsigned a[] = {3, 5, 7};
        std::seed_seq sseq(a, a+3);
        std::linear_congruential_engine<unsigned, 5, 7, 11> e1;
        std::linear_congruential_engine<unsigned, 5, 7, 11> e2(4);
        assert(e1 != e2);
        e1.seed(sseq);
        assert(e1 == e2);
    }
}
void
test2()
{
    const char* a = "241408498702289 172342669275054 191026374555184 "
    "61020585639411 231929771458953 142769679250755 198672786411514 "
    "183712717244841 227473912549724 62843577252444 68782400568421 "
    "159248704678140 0 0";
    unsigned as[] = {3, 5, 7};
    std::seed_seq sseq(as, as+3);
    std::independent_bits_engine<std::ranlux48, 64, unsigned long long> e1(sseq);
    std::ostringstream os;
    os << e1;
    assert(os.str() == a);
}
void
test1()
{
    const char* a = "13604817 711567 9760686 13278398 3323440 175548 5553651 "
    "3028863 10748297 2216688 275779 14778841 14438394 9483441 4229545 "
    "14657301 12636508 15978210 1653340 1718567 9272421 14302862 7940348 "
    "889045 0 0";
    unsigned as[] = {3, 5, 7};
    std::seed_seq sseq(as, as+3);
    std::independent_bits_engine<std::ranlux24, 32, unsigned> e1(sseq);
    std::ostringstream os;
    os << e1;
    assert(os.str() == a);
}