C ++ programa sudėtingiems skaičiams pridėti perduodant struktūrą funkcijai

Ši programa naudoja du sudėtingus skaičius kaip struktūras ir prideda juos naudodama funkcijas.

Norėdami suprasti šį pavyzdį, turėtumėte žinoti šias C ++ programavimo temas:

  • C ++ struktūros
  • C ++ struktūra ir funkcija

Pavyzdys: šaltinio kodas, jei norite pridėti du sudėtingus skaičius

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

Rezultatas

 Įveskite tikrąsias ir įsivaizduojamas dalis atitinkamai: 3,4 5,5 2-ajam kompleksiniam skaičiui įveskite atitinkamai tikrąją ir įsivaizduojamąsias dalis: -4,5 -9,5 Suma = -1,1-4i

Šioje programoje du sudėtingi vartotojo įvesti skaičiai yra saugomi struktūrose num1 ir num2.

Šios dvi struktūros perduodamos addComplexNumbers()funkcijai, kuri apskaičiuoja sumą ir grąžina rezultatą main()funkcijai.

Šis rezultatas saugomas struktūros komplekse „Sum“.

Tada nustatomas įsivaizduojamos sumos dalies ženklas ir saugomas charkintamajame signOfImag.

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

Jei įsivaizduojama „complexSum“ dalis yra teigiama, tada „signOfImag“ priskiriama vertė '+'. Kitaip, jai priskiriama vertė '-'.

Tada mes pakoreguojame complexSum.imag vertę.

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

Šis kodas pakeičia „complexSum.imag“ į teigiamą, jei nustatoma, kad jo vertė yra neigiama.

Taip yra todėl, kad jei jis yra neigiamas, tada atspausdinę jį kartu su signOfImag gausime du neigiamus ženklus išvestyje.

Taigi, norėdami išvengti ženklų pasikartojimo, reikšmę keičiame į teigiamą.

Po to mes pagaliau parodome sumą.

Įdomios straipsniai...