--- linear_congruential.hpp.orig 2008-11-27 02:10:55.000000000 +0800 +++ linear_congruential.hpp 2009-01-20 17:24:42.000000000 +0800 @@ -124,7 +124,9 @@ operator>>(std::basic_istream& is, linear_congruential& lcg) { - return is >> lcg._x; + is >> lcg._x; + lcg._x %= linear_congruential::modulus; + return is; } private: