C ++ programm keerukate numbrite lisamiseks, edastades funktsioonile struktuuri

Lang L: none (table-of-contents)

See programm võtab struktuuridena kaks keerulist numbrit ja lisab need funktsioonide kasutamisega.

Selle näite mõistmiseks peaksid teil olema teadmised järgmistest C ++ programmeerimise teemadest:

  • C ++ struktuurid
  • C ++ struktuur ja funktsioon

Näide: lähtekood kahe kompleksarvu lisamiseks

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

Väljund

 Sisestage vastavalt reaalsed ja kujuteldavad osad: 3,4 5,5 2. kompleksarvu korral sisestage vastavalt reaalsed ja kujuteldavad osad: -4,5 -9,5 Summa = -1,1-4i

Selles programmis on kaks kasutaja poolt sisestatud kompleksnumbrit salvestatud struktuuridesse num1 ja num2.

Need kaks struktuuri edastatakse addComplexNumbers()funktsioonile, mis arvutab summa ja tagastab tulemuse main()funktsioonile.

See tulemus salvestatakse struktuuri complexSum.

Seejärel määratakse summa kujuteldava osa märk ja salvestatakse charmuutuja signOfImag.

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

Kui komplekssumma kujuteldav osa on positiivne, määratakse väärtus signOfImag '+'. Muul juhul määratakse sellele väärtus '-'.

Seejärel kohandame complexSum.imag väärtust.

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

See kood muudab complexSum.imag positiivseks, kui leitakse, et see on negatiivse väärtusega.

Seda seetõttu, et kui see on negatiivne, siis selle printimine koos signOfImagiga annab meile väljundis kaks negatiivset märki.

Niisiis muudame väärtuse positiivseks, et vältida märkide kordumist.

Pärast seda kuvame lõpuks summa.

Huvitavad Artiklid...