C ++ Program for å legge til komplekse tall ved å overføre struktur til en funksjon

Dette programmet tar to komplekse tall som strukturer og legger dem til ved bruk av funksjoner.

For å forstå dette eksemplet, bør du ha kunnskap om følgende C ++ programmeringsemner:

  • C ++ strukturer
  • C ++ struktur og funksjon

Eksempel: Kildekode for å legge til to komplekse tall

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

Produksjon

 Angi henholdsvis reelle og imaginære deler: 3.4 5.5 For 2. komplekse tall, skriv inn reelle og imaginære deler henholdsvis: -4.5 -9.5 Sum = -1.1-4i

I dette programmet lagres to komplekse tall som er angitt av brukeren i strukturene num1 og num2.

Disse to strukturene overføres til addComplexNumbers()funksjon som beregner summen og returnerer resultatet til main()funksjonen.

Dette resultatet lagres i strukturen complexSum.

Deretter blir tegnet på den imaginære delen av summen bestemt og lagret i charvariabelen signOfImag.

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

Hvis den imaginære delen av complexSum er positiv, tildeles signOfImag verdien '+'. Ellers tildeles den verdien '-'.

Vi justerer deretter verdien av complexSum.imag.

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

Denne koden endrer complexSum.imag til positiv hvis den viser seg å ha negativ verdi.

Dette er fordi hvis det er negativt, vil utskrift av det sammen med signOfImag gi oss to negative tegn i utdataene.

Så vi endrer verdien til positiv for å unngå repetisjon av tegn.

Etter dette viser vi endelig summen.

Interessante artikler...