使用运算符重载定义复数相加,相减和相乘的复数类,显示两个复数,和,差,乘积
public class Complex
{
public double Real { get; set; }
public double Imaginary { get; set; }
public Complex(double real, double imaginary)
{
Real = real;
Imaginary = imaginary;
}
public static Complex operator +(Complex c1, Complex c2)
{
return new Complex(c1.Real + c2.Real, c1.Imaginary + c2.Imaginary);
}
public static Complex operator -(Complex c1, Complex c2)
{
return new Complex(c1.Real - c2.Real, c1.Imaginary - c2.Imaginary);
}
public static Complex operator *(Complex c1, Complex c2)
{
return new Complex(c1.Real * c2.Real - c1.Imaginary * c2.Imaginary, c1.Real * c2.Imaginary + c1.Imaginary * c2.Real);
}
public override string ToString()
{
return $"{Real} + {Imaginary}i";
}
}
主代码:
Complex c1 = new Complex(1, 2);
Complex c2 = new Complex(3, 4);
Console.WriteLine($"c1 = {c1}");
Console.WriteLine($"c2 = {c2}");
Console.WriteLine($"c1 + c2 = {c1 + c2}");
Console.WriteLine($"c1 - c2 = {c1 - c2}");
Console.WriteLine($"c1 * c2 = {c1 * c2}");