Chương trình C ++ để thêm số phức bằng cách chuyển cấu trúc cho một hàm

Chương trình này lấy hai số phức làm cấu trúc và thêm chúng bằng cách sử dụng các hàm.

Để hiểu ví dụ này, bạn nên có kiến ​​thức về các chủ đề lập trình C ++ sau:

  • Cấu trúc C ++
  • Cấu trúc và chức năng của C ++

Ví dụ: Mã nguồn để thêm hai số phức

 // Complex numbers are entered by the user #include using namespace std; typedef struct complex ( float real; float imag; ) complexNumber; complexNumber addComplexNumbers(complex, complex); int main() ( complexNumber num1, num2, complexSum; char signOfImag; cout << "For 1st complex number," << endl; cout << "Enter real and imaginary parts respectively:" <> num1.real>> num1.imag; cout << endl << "For 2nd complex number," << endl; cout << "Enter real and imaginary parts respectively:" <> num2.real>> num2.imag; // Call add function and store result in complexSum complexSum = addComplexNumbers(num1, num2); // Use Ternary Operator to check the sign of the imaginary number signOfImag = (complexSum.imag> 0) ? '+' : '-'; // Use Ternary Operator to adjust the sign of the imaginary number complexSum.imag = (complexSum.imag> 0) ? complexSum.imag : -complexSum.imag; cout << "Sum = " << complexSum.real << signOfImag << complexSum.imag << "i"; return 0; ) complexNumber addComplexNumbers(complex num1, complex num2) ( complex temp; temp.real = num1.real + num2.real; temp.imag = num1.imag + num2.imag; return (temp); ) 

Đầu ra

 Nhập phần thực và phần ảo tương ứng: 3,4 5.5 Đối với số phức thứ 2, Nhập phần thực và phần ảo tương ứng: -4,5 -9,5 Sum = -1,1-4i

Trong chương trình này, hai số phức do người dùng nhập vào được lưu trữ trong cấu trúc num1 và num2.

Hai cấu trúc này được chuyển cho addComplexNumbers()hàm để tính tổng và trả về kết quả cho main()hàm.

Kết quả này được lưu trữ trong cấu trúc complexSum.

Sau đó, dấu của phần ảo của tổng được xác định và lưu trữ trong charbiến signOfImag.

 // Use Ternary Operator to check the sign of the imaginary number signOfImag = (complexSum.imag> 0) ? '+' : '-'; 

Nếu phần ảo của complexSum là số dương, thì signOfImag được gán giá trị '+'. Khác, nó được gán giá trị '-'.

Sau đó, chúng tôi điều chỉnh giá trị của complexSum.imag.

 /// Use Ternary Operator to adjust the sign of the imaginary number complexSum.imag = (complexSum.imag> 0) ? complexSum.imag : -complexSum.imag; 

Mã này thay đổi complexSum.imag thành dương nếu nó được tìm thấy có giá trị âm.

Điều này là do nếu nó là âm, thì in nó cùng với signOfImag sẽ cho chúng ta hai dấu âm trong đầu ra.

Vì vậy, chúng tôi thay đổi giá trị thành dương để tránh lặp lại dấu hiệu.

Sau đó, cuối cùng chúng tôi hiển thị tổng.

thú vị bài viết...