समस्या
C प्रोग्राम का उपयोग करके रनटाइम पर उपयोगकर्ता द्वारा दर्ज दो सम्मिश्र संख्याओं (Complex Numbers) को कैसे जोड़ें?
समाधान
एक सम्मिश्र संख्या वास्तविक (real) और काल्पनिक (imaginary) भागों का संयोजन होती है। इसे a + ib के रूप में दर्शाया जाता है, जहां a वास्तविक भाग है और b काल्पनिक भाग है।
उदाहरण
मान लीजिए दो सम्मिश्र संख्याएं हैं: (4 + 2i) और (5 + 3i)। इन्हें जोड़ने पर:
वास्तविक भाग: 4 + 5 = 9
काल्पनिक भाग: 2 + 3 = 5
परिणाम: 9 + 5i
प्रोग्राम
#include <stdio.h>
struct complexNumber {
int realnumber;
int imaginarynumber;
};
int main() {
struct complexNumber x, y, z;
printf("पहली सम्मिश्र संख्या दर्ज करें (वास्तविक काल्पनिक): ");
scanf("%d %d", &x.realnumber, &x.imaginarynumber);
printf("दूसरी सम्मिश्र संख्या दर्ज करें (वास्तविक काल्पनिक): ");
scanf("%d %d", &y.realnumber, &y.imaginarynumber);
z.realnumber = x.realnumber + y.realnumber;
z.imaginarynumber = x.imaginarynumber + y.imaginarynumber;
printf("सम्मिश्र संख्याओं का योग: (%d) + (%di)\n", z.realnumber, z.imaginarynumber);
return 0;
}
आउटपुट
पहली सम्मिश्र संख्या दर्ज करें (वास्तविक काल्पनिक): 2 3
दूसरी सम्मिश्र संख्या दर्ज करें (वास्तविक काल्पनिक): 4 5
सम्मिश्र संख्याओं का योग: (6) + (8i)
व्याख्या
- हमने
struct complexNumberनामक एक संरचना परिभाषित की जिसमें दो पूर्णांक सदस्य हैं:realnumberऔरimaginarynumber। - दो संरचना चर
xऔरyइनपुट के लिए औरzपरिणाम संग्रहीत करने के लिए उपयोग किए जाते हैं। - योग की गणना वास्तविक भागों और काल्पनिक भागों को अलग-अलग जोड़कर की जाती है।
संभावित सुधार
floatयाdoubleका उपयोग करके दशमलव मानों का समर्थन किया जा सकता है।- घटाव, गुणा और भाग के लिए अलग-अलग फ़ंक्शन बनाए जा सकते हैं।
complex.hहेडर फ़ाइल (C99 मानक) अंतर्निहित सम्मिश्र संख्या समर्थन प्रदान करती है।