fork download
  1. using System;
  2.  
  3. public class Test
  4. {
  5. static ulong m_seed = 88172645463325252;
  6.  
  7. public static ulong xorshift64()
  8. {
  9. m_seed = m_seed ^ (m_seed << 7);
  10. return m_seed = m_seed ^ (m_seed >> 9);
  11. }
  12.  
  13. public static double rand1()
  14. {
  15. return (double)xorshift64() / (double)0xffffffffffffffff;
  16. }
  17.  
  18. public static void Main()
  19. {
  20. // 0x0000000000000000~0xffffffffffffffff
  21. for (int i = 0; i < 10; ++i) {
  22. Console.WriteLine("[" + (i+1).ToString() + "]:" + xorshift64().ToString());
  23. }
  24. // 0 ~ 9
  25. for (int i = 0; i < 10; ++i) {
  26. Console.WriteLine("[" + (i+1).ToString() + "]:" + (xorshift64() % 10).ToString());
  27. }
  28. // 0 ~ 1
  29. for (int i = 0; i < 10; ++i) {
  30. Console.WriteLine("[" + (i+1).ToString() + "]:" + rand1().ToString());
  31. }
  32. }
  33. }
Success #stdin #stdout 0.02s 131520KB
stdin
Standard input is empty
stdout
[1]:11373782495151020392
[2]:8505512047393832734
[3]:8278699350803616934
[4]:220332960558298757
[5]:9524873121654605887
[6]:10661192985427706996
[7]:7626175587700873323
[8]:9465218754499960509
[9]:3375290904647064957
[10]:4993751095158012044
[1]:9
[2]:2
[3]:6
[4]:1
[5]:1
[6]:6
[7]:2
[8]:0
[9]:1
[10]:1
[1]:0.65169456432511
[2]:0.797019942694965
[3]:0.784469305952562
[4]:0.632802239588437
[5]:0.369042719673763
[6]:0.384803358962545
[7]:0.139391868238259
[8]:0.954140575311598
[9]:0.833729699178884
[10]:0.386622697455633