Programme C ++ pour ajouter des nombres complexes en passant une structure à une fonction

Ce programme prend deux nombres complexes comme structures et les ajoute à l'aide de fonctions.

Pour comprendre cet exemple, vous devez avoir la connaissance des rubriques de programmation C ++ suivantes:

  • Structures C ++
  • Structure et fonction C ++

Exemple: code source pour ajouter deux nombres complexes

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

Production

 Entrez respectivement les parties réelles et imaginaires: 3,4 5,5 Pour le 2ème nombre complexe, entrez respectivement les parties réelles et imaginaires: -4,5 -9,5 Somme = -1,1-4i

Dans ce programme, deux nombres complexes saisis par l'utilisateur sont stockés dans les structures num1 et num2.

Ces deux structures sont passées à la addComplexNumbers()fonction qui calcule la somme et renvoie le résultat à la main()fonction.

Ce résultat est stocké dans la structure complexSum.

Ensuite, le signe de la partie imaginaire de la somme est déterminé et stocké dans la charvariable signOfImag.

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

Si la partie imaginaire de complexSum est positive, la valeur est affectée à signOfImag '+'. Sinon, la valeur lui est attribuée '-'.

Nous ajustons ensuite la valeur de complexSum.imag.

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

Ce code change complexSum.imag en positif s'il s'avère être de valeur négative.

En effet, s'il est négatif, son impression avec signOfImag nous donnera deux signes négatifs dans la sortie.

Donc, nous changeons la valeur en positive pour éviter la répétition des signes.

Après cela, nous affichons enfin la somme.

Articles intéressants...