در این قسمت تیم کدگیت را با آموزش جمع اعداد مختلط در سی شارپ همراهی کنید. طبق روال گذشته ابتدا اعداد مختلط را تعریف و روش جمع این اعداد را بررسی کرده و سپس به پیاده سازی جمع اعداد مختلط میپردازیم. پیشنهاد میکنیم قبل از بررسی این جلسه، آموزشهای زیر را مطالعه کنید:
اعداد مختلط
اعداد مختلط دسته ویژهای از اعداد هستند که از ترکیب یک عدد حقیقی و یک عدد موهومی به دست میآیند. فرم نوشتار این اعداد به صورت a+ib است. a را قسمت حقیقی و b را قسمت موهومی میگویند. مانند اعداد حقیقی اعداد مختلط نیز اعمالی نظیر جمع، ضرب و تفریق و … برای آنها تعریف شده است.
جمع اعداد مختلط
برای اینکه دو عدد مختلط را با هم جمع کنیم کار بسیار سادهای داریم. قسمتهای موهومی و حقیقی دو عدد به صورت جداگانه با یکدیگر جمع کرده و حاصل را بدست میآوریم. فرض کنید عدد 1+2i و 3+4i را با هم جمع کنیم. اعداد 1 و 3 را با هم جمع کرده و اعداد 4 و 2 را نیز با یکدیگر جمع میکنیم. پس حاصل جمع برابر با 4+6i است.
جمع اعداد مختلط در سی شارپ
برای پیاده سازی اعداد مختلط ما یک کلاس به نام Complex میسازیم. این کلاس دو متغیر به نام imaginary (موهومی) و real (حقیقی) دارد که در Constructor آنها را مقدار دهی میکنیم. متدی به نام addComp نوشتیم که دو عدد مختلط (شی از کلاس Complex) به عنوان ورودی میگیرد و قسمتهای حقیقی و موهومی آنها را با هم جمع کرده و در خروجی به ما میدهد. کد توضیحات فوق به صورت زیر میباشد:
public class Complex {
int real, imaginary;
public Complex() {
}
public Complex(int real, int imaginary) {
this.real = real;
this.imaginary = imaginary;
}
public Complex addComp(Complex C1, Complex C2) {
Complex temp = new Complex();
temp.real = C1.real + C2.real;
temp.imaginary = C1.imaginary + C2.imaginary;
// returning the sum
return temp;
}
public void printComplexNumber() {
Console.WriteLine("Complex number: " + real + " + " + imaginary + "i");
}
}
در کد فوق یک متد به نام printComplexNumber آورده شده که برای چاپ اعداد مختلط به کار میرود.
تست جمع اعداد مختلط در سی شارپ
کد تست جمع اعداد مختلط به صورت زیر میباشد:
public static void Main (string[] args)
{
Complex C1 = new Complex(3, 2);
C1.printComplexNumber();
Complex C2 = new Complex(9, 5);
C2.printComplexNumber();
Complex C3 = new Complex();
C3 = C3.addComp(C1, C2);
Console.WriteLine("Sum of ");
C3.printComplexNumber();
Console.WriteLine ("Press any key to Finish Program");
Console.ReadKey ();
}
تصویر زیر خروجی کد فوق میباشد:
Complex number: 3 + 2i
Complex number: 9 + 5i
Sum of Complex number: 12 + 7i