示例#1
0
        static void Main(string[] args)
        {
            GaussianInteger GI = new GaussianInteger(4, 0);

            GI.IsPrime = GI.CheckIsPrime(GI);
            Console.WriteLine(GI.IsPrime);
        }
示例#2
0
 public bool CheckIsPrime(GaussianInteger GI)
 {
     for (int i = 0; i < GI.a; i++)
     {
         for (int j = 0; j < GI.b; j++)
         {
             if (!(i == 0 && j == 0))
             {
                 double FirstNumber  = (GI.a * i + GI.b * j) / (i * i + j * j);
                 double SecondNumber = (GI.a * i - GI.b * j) / (i * i + j * j);
                 if (!(GI.IsUnit && (new GaussianInteger(i, j).IsUnit)))
                 {
                     if (FirstNumber == (int)FirstNumber && SecondNumber == (int)SecondNumber)
                     {
                         return(false);
                     }
                 }
             }
         }
     }
     return(true);
 }