示例#1
0
        static void Main(string[] args)
        {
            ComplNumb z1 = new ComplNumb();
            ComplNumb z2 = new ComplNumb();

            Console.WriteLine("Комплексные числа в данном примере представлены в виде : z = r + i");
            Console.WriteLine("где r - действительная часть числа, i - мнимая его часть.");
            Console.WriteLine();
            Console.Write("Введите целую часть первого комплексного числа: ");
            z1.r = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите мнимую часть первого комплексного числа: ");
            z1.i = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите целую часть второго комплексного числа: ");
            z2.r = Convert.ToDouble(Console.ReadLine());
            Console.Write("Введите мнимую часть первого комплексного числа: ");
            z2.i = Convert.ToDouble(Console.ReadLine());
            Console.WriteLine();
            Console.WriteLine("Спасибо.      Операции с введенными числами :");
            Console.WriteLine("Сложение:       {0} + {1}i", (z1 + z2).r, (z1 + z2).i);
            Console.WriteLine("Вычитание:      {0} + {1}i", (z1 - z2).r, (z1 - z2).i);
            Console.WriteLine("Умножение:      {0} + {1}i", (z1 * z2).r, (z1 * z2).i);
            Console.WriteLine("Деление:        {0} + {1}i", (z1 / z2).r, (z1 / z2).i);

            Console.ReadKey();
        }
        public static ComplNumb Division(ComplNumb a, ComplNumb b)
        {
            ComplNumb res = new ComplNumb();

            res.r = a.r / b.r - a.i / b.i;
            res.i = a.i / b.r + a.r / b.i;
            return(res);
        }
        public static ComplNumb Multiplication(ComplNumb a, ComplNumb b)
        {
            ComplNumb res = new ComplNumb();

            res.r = a.r * b.r - a.i * b.i;
            res.i = a.i * b.r + a.r * b.i;
            return(res);
        }
        public static ComplNumb Sum(ComplNumb a, ComplNumb b)
        {
            ComplNumb res = new ComplNumb();

            res.r = a.r + b.r;
            res.i = a.i + b.i;
            return(res);
        }
        public static ComplNumb Subtract(ComplNumb a, ComplNumb b)
        {
            ComplNumb res = new ComplNumb
            {
                r = a.r - b.r,
                i = a.i - b.i
            };

            return(res);
        }
 public static ComplNumb operator /(ComplNumb a, ComplNumb b)
 {
     return(ComplNumb.Division(a, b));
 }
 public static ComplNumb operator *(ComplNumb a, ComplNumb b)
 {
     return(ComplNumb.Multiplication(a, b));
 }
 public static ComplNumb operator -(ComplNumb a, ComplNumb b)
 {
     return(ComplNumb.Subtract(a, b));
 }
 public static ComplNumb operator +(ComplNumb a, ComplNumb b)
 {
     return(ComplNumb.Sum(a, b));
 }