public void IsNotPronicTests(long basis)
 {
     checked
     {
         int range = (int)Math.Min(basis - 1, 10000);
         for (long i = 1; i < range; ++i)
         {
             long cand      = basis + i;
             long notPronic = cand * (cand + 1) - i;
             IsFalse(BigPronicChallenge.IsPronic(notPronic), notPronic.ToString());
         }
     }
 }
 public void IsPronicTests(long basis)
 {
     checked
     {
         int range = (int)Math.Min(basis - 1, 10000);
         for (long i = 0; i < range; ++i)
         {
             long cand   = basis + i;
             long pronic = cand * (cand + 1);
             IsTrue(BigPronicChallenge.IsPronic(pronic), pronic.ToString());
         }
     }
 }
 public void RandomTests()
 {
     checked
     {
         var r = new Random();
         for (int i = 0; i < 100000; ++i)
         {
             long cand   = r.Next();
             long pronic = cand * (cand - 1);
             IsTrue(BigPronicChallenge.IsPronic(pronic), pronic.ToString());
             long notPronic = pronic + 2;
             IsFalse(BigPronicChallenge.IsPronic(notPronic), notPronic.ToString());
         }
     }
 }
 public bool IndividualPronicTests(long n)
 {
     return(BigPronicChallenge.IsPronic(n));
 }