C ++ programma, lai pievienotu sarežģītus skaitļus, nododot struktūru funkcijai

Šī programma ņem divus sarežģītus skaitļus kā struktūras un pievieno tos, izmantojot funkcijas.

Lai saprastu šo piemēru, jums jāzina par šādām C ++ programmēšanas tēmām:

  • C ++ struktūras
  • C ++ struktūra un funkcija

Piemērs: pirmkods, lai pievienotu divus sarežģītus numurus

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

Rezultāts

 Ievadiet attiecīgi reālo un iedomāto daļu: 3.4 5.5. 2. kompleksajam skaitlim ievadiet attiecīgi reālo un iedomāto daļu: -4.5 -9.5 Sum = -1.1-4i

Šajā programmā divi kompleksi numuri, kurus ievadījis lietotājs, tiek glabāti struktūrās num1 un num2.

Šīs divas struktūras tiek nodotas addComplexNumbers()funkcijai, kas aprēķina summu un atgriež rezultātu main()funkcijai.

Šis rezultāts tiek saglabāts struktūras kompleksāSum.

Tad summas iedomātās daļas zīmi nosaka un saglabā charmainīgajā signOfImag.

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

Ja iedomātā complexSum daļa ir pozitīva, tad signOfImag tiek piešķirta vērtība '+'. Citādi tam tiek piešķirta vērtība '-'.

Pēc tam mēs koriģējam complexSum.imag vērtību.

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

Šis kods izmaina complexSum.imag uz pozitīvu, ja tiek atzīts, ka tam ir negatīva vērtība.

Tas ir tāpēc, ka, ja tas ir negatīvs, tad, izdrukājot to kopā ar signOfImag, mēs iegūsim divas negatīvas zīmes.

Tātad, mēs mainām vērtību uz pozitīvu, lai izvairītos no zīmju atkārtošanās.

Pēc tam mēs beidzot parādām summu.

Interesanti raksti...