Program C ++ untuk Menambahkan Bilangan Kompleks dengan Meneruskan Struktur ke Fungsi

Program ini mengambil dua bilangan kompleks sebagai struktur dan menambahkannya dengan menggunakan fungsi.

Untuk memahami contoh ini, Anda harus memiliki pengetahuan tentang topik pemrograman C ++ berikut:

  • Struktur C ++
  • Struktur dan Fungsi C ++

Contoh: Kode Sumber untuk Menambahkan Dua Bilangan Kompleks

 // 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); ) 

Keluaran

 Masukkan bagian nyata dan imajiner masing-masing: 3.4 5.5 Untuk bilangan kompleks ke-2, Masukkan bagian real dan imajiner masing-masing: -4.5 -9.5 Jumlah = -1.1-4i

Dalam program ini, dua bilangan kompleks yang dimasukkan oleh pengguna disimpan dalam struktur num1 dan num2.

Kedua struktur ini diteruskan ke addComplexNumbers()fungsi yang menghitung jumlah dan mengembalikan hasilnya ke main()fungsi.

Hasil ini disimpan dalam struktur complexSum.

Kemudian, tanda bagian imajiner dari penjumlahan tersebut ditentukan dan disimpan dalam charvariabel signOfImag.

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

Jika bagian imajiner dari complexSum bernilai positif, maka nilai signOfImag ditetapkan '+'. Lain, itu diberi nilai '-'.

Kami kemudian menyesuaikan nilai complexSum.imag.

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

Kode ini mengubah complexSum.imag menjadi positif jika ternyata bernilai negatif.

Ini karena jika negatif, maka mencetaknya bersama dengan signOfImag akan memberi kita dua tanda negatif pada keluaran.

Jadi, kita ubah nilainya menjadi positif untuk menghindari pengulangan tanda.

Setelah ini, kami akhirnya menampilkan jumlahnya.

Artikel yang menarik...