Програма C ++ для додавання складних чисел шляхом передачі структури функції

Ця програма приймає два складні числа як структури і додає їх за допомогою функцій.

Щоб зрозуміти цей приклад, ви повинні знати наступні теми програмування на C ++:

  • Структури С ++
  • Структура та функції С ++

Приклад: Вихідний код для додавання двох складних чисел

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

Вихідні дані

 Введіть дійсну та уявну частини відповідно: 3,4 5,5 Для 2-го комплексного числа введіть відповідно дійсну та уявну частини: -4,5 -9,5 Сума = -1,1-4i

У цій програмі два комплексні числа, введені користувачем, зберігаються в структурах num1 та num2.

Ці дві структури передаються addComplexNumbers()функції, яка обчислює суму і повертає результат main()функції.

Цей результат зберігається в структурі complexSum.

Потім визначається знак уявної частини суми і зберігається у charзмінній signOfImag.

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

Якщо уявна частина комплексуSum позитивна, знаку signOfImag присвоюється значення '+'. В іншому випадку йому присвоюється значення '-'.

Потім ми коригуємо значення complexSum.imag.

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

Цей код змінює complexSum.imag на позитивний, якщо виявляється, що він має негативне значення.

Це тому, що якщо воно від’ємне, то друк його разом із signOfImag дасть нам два негативні знаки на виході.

Отже, ми змінюємо значення на позитивне, щоб уникнути повторення знаків.

Після цього ми нарешті відображаємо суму.

Цікаві статті...