Advertisement
GogoK

calcBigPrimeNumbers

Dec 9th, 2015
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.67 KB | None | 0 0
  1. using System;
  2. using System.Diagnostics;
  3. using System.Numerics;
  4.  
  5. public class Program
  6. {
  7.     public static void Main()
  8.     {
  9.         Console.WriteLine("     ==> Int");
  10.         int[] numbers = { 50000017, 100000007 };
  11.         for (int i = 0; i < numbers.Length; i++)
  12.         {
  13.             IsPrime(numbers[i]);
  14.         }
  15.        
  16.        
  17.         Console.WriteLine("     ==> BigInt");
  18.         BigInteger[] big = { 50000017, 100000007 };
  19.         for (int i = 0; i < big.Length; i++)
  20.         {
  21.             IsPrime(big[i]);
  22.         }
  23.        
  24.         Console.WriteLine("     ==> Square BigInt <==");
  25.         for (int i = 0; i < big.Length; i++)
  26.         {
  27.             BigIntegerPrime(big[i]);
  28.         }
  29.        
  30.         BigInteger theNumber = 6737626471;
  31.         BigIntegerPrime(theNumber);
  32.        
  33.         Console.WriteLine("\n   Press any key to the problem!");
  34.         Console.ReadKey();
  35.        
  36.         InfinityLoop();
  37.     }
  38.  
  39.     // int
  40.     static void IsPrime(int num)
  41.     {
  42.         bool isPrime = true;
  43.         var stopwatch = new Stopwatch();
  44.  
  45.         stopwatch.Start();
  46.         for (int i = 2; i < num; i++)
  47.         {
  48.             if (num % i == 0)
  49.             {
  50.                 Console.WriteLine(isPrime == false);
  51.                 break;
  52.             }
  53.         }
  54.         var time = stopwatch.Elapsed;
  55.         stopwatch.Stop();
  56.         Console.WriteLine("number: {0}          {1} mil.", num, (num / 1000000));   //  nubmer / one milion
  57.         Console.WriteLine("Prime?: {0}", isPrime);
  58.         Console.WriteLine(time);
  59.         Console.WriteLine();
  60.     }
  61.  
  62.     // BigInt
  63.     static void IsPrime(BigInteger num)
  64.     {
  65.         bool isPrime = true;
  66.         var stopwatch = new Stopwatch();
  67.  
  68.         stopwatch.Start();
  69.         for (BigInteger i = 2; i < num; i++)
  70.         {
  71.             if (num % i == 0)
  72.             {
  73.                 Console.WriteLine(isPrime == false);
  74.                 break;
  75.             }
  76.         }
  77.         var time = stopwatch.Elapsed;
  78.         stopwatch.Stop();
  79.         Console.WriteLine("number: {0}          {1} mil.", num, (num / 1000000));   //  nubmer / one milion
  80.         Console.WriteLine("Prime?: {0}", isPrime);
  81.         Console.WriteLine(time);
  82.         Console.WriteLine();
  83.     }
  84.  
  85.     // Square BigInt
  86.     static void BigIntegerPrime(BigInteger num)
  87.     {
  88.         bool isPrime = true;
  89.         var stopwatch = new Stopwatch();
  90.  
  91.         stopwatch.Start();
  92.         for (BigInteger i = 2; i <= (BigInteger)Math.Sqrt((double)num); i++)
  93.         {
  94.             if (num % i == 0)
  95.             {
  96.                 isPrime = false;
  97.                 Console.WriteLine(isPrime);
  98.                 break;
  99.             }
  100.         }
  101.         var time = stopwatch.Elapsed;
  102.         stopwatch.Stop();
  103.         Console.WriteLine("number: {0}          {1} mil.", num, (num / 1000000));   //  nubmer / one milion
  104.         Console.WriteLine("Prime?: {0}", isPrime);
  105.         Console.WriteLine(time);
  106.         Console.WriteLine();
  107.     }
  108.  
  109.     // byte.MaxValue = 255.... byte.MinValue = 255 + 1 ??
  110.     static void InfinityLoop()
  111.     {
  112.         bool isNewPoint = true;
  113.         for (byte i = byte.MinValue; i < 300; i++)    // byte: 0-255 !!!    byte: 255++ == 0    i < 300.. infinity loop!
  114.         {
  115.             if (isNewPoint && i == byte.MaxValue)
  116.             {
  117.                 Console.WriteLine("  i= {0} ==>  This is a new point!", i);
  118.                 System.Threading.Thread.Sleep(2000);
  119.                 isNewPoint = false;
  120.             }
  121.             else if (i == byte.MaxValue)
  122.             {
  123.                 Console.WriteLine("  i= {0} ==>  I was here!", i);
  124.                 System.Threading.Thread.Sleep(2000);
  125.             }
  126.         }
  127.     }
  128. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement