Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- namespace ConsoleApplication2
- {
- class Program
- {
- static void Main(string[] args)
- {
- var freq = new int[20];
- var rng = new RandomNumberGenerator();
- for (int i = 0; i < 100; i++)
- {
- var rnd = rng.Next(20);
- freq[rnd] += 1;
- Console.Write("{0}, ", rnd);
- }
- Console.WriteLine("Done.");
- for (int i = 0; i < 20; i++)
- {
- Console.Write("{0}={1}\t", i, freq[i]);
- }
- Console.ReadLine();
- }
- }
- class RandomNumberGenerator
- {
- private const long m = 4294967296; // aka 2^32
- private const long a = 1664525;
- private const long c = 1013904223;
- private long _last;
- public RandomNumberGenerator()
- {
- _last = DateTime.Now.Ticks % m;
- }
- public RandomNumberGenerator(long seed)
- {
- _last = seed;
- }
- public long Next()
- {
- _last = ((a * _last) + c) % m;
- return _last;
- }
- public long Next(long maxValue)
- {
- return Next() % maxValue;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement