Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> सी प्रोग्रामिंग

C प्रोग्राम: द्विघात समीकरण के मूल ज्ञात करना

समस्या

सॉफ्टवेयर डेवलपमेंट मेथड लागू करके C में द्विघात समीकरण के मूल ज्ञात करना।

विश्लेषण

इनपुट: a, b, c मान (समीकरण: ax² + bx + c = 0)

आउटपुट: r1, r2 मूल

प्रक्रिया

रूट्स के सूत्र:

r₁ = (-b + √(b² - 4ac)) / 2a
r₂ = (-b - √(b² - 4ac)) / 2a

एल्गोरिदम

  1. शुरुआत
  2. a, b, c पढ़ें
  3. d = b² - 4ac की गणना करें (डिस्क्रिमिनेंट)
  4. यदि d > 0:
    • r1 = (-b + √d) / 2a
    • r2 = (-b - √d) / 2a
    • r1, r2 प्रिंट करें
  5. अन्यथा यदि d = 0:
    • r1 = r2 = -b / 2a
    • r1, r2 प्रिंट करें
  6. अन्यथा (d < 0): "Roots are imaginary" प्रिंट करें
  7. रुकें

C प्रोग्राम

#include <stdio.h>
#include <math.h>

int main() {
    float a, b, c, r1, r2, d;
    printf("Enter values of a, b, c: ");
    scanf("%f %f %f", &a, &b, &c);
    d = b*b - 4*a*c;
    if (d > 0) {
        r1 = (-b + sqrt(d)) / (2*a);
        r2 = (-b - sqrt(d)) / (2*a);
        printf("Real roots: %f, %f", r1, r2);
    } else if (d == 0) {
        r1 = r2 = -b / (2*a);
        printf("Equal roots: %f, %f", r1, r2);
    } else {
        printf("Roots are imaginary");
    }
    return 0;
}

टेस्ट केसेस

Case 1: a=1, b=4, c=3
d = 16 - 12 = 4 > 0
r1 = (-4 + 2)/2 = -1
r2 = (-4 - 2)/2 = -3
Output: Real roots: -1.000000, -3.000000

Case 2: a=1, b=2, c=1
d = 4 - 4 = 0
r1 = r2 = -2/2 = -1
Output: Equal roots: -1.000000, -1.000000

Case 3: a=1, b=1, c=4
d = 1 - 16 = -15 < 0
Output: Roots are imaginary

नोट

मूल कोड में ऑपरेटर प्रीसिडेंस एरर था: -b+sqrt(d)/(2*a) गलत है। सही: (-b + sqrt(d)) / (2*a)।

  1. लिंक्ड लिस्ट की लंबाई खोजने का C प्रोग्राम लिंक्ड लिस्ट की लंबाई खोजने का C प्रोग्राम

    लिंक्ड लिस्ट डायनामिक मेमोरी आवंटन का उपयोग करती हैं यानी वे तदनुसार बढ़ती और सिकुड़ती हैं। उन्हें नोड्स के संग्रह के रूप में परिभाषित किया जाता है। यहां, नोड्स के दो भाग होते हैं: डेटा और लिंक। डेटा, लिंक और लिंक्ड लिस्ट का प्रतिनिधित्व नीचे दिया गया है। लिंक्ड लिस्ट के प्रकार लिंक्ड लिस्ट के चार

  1. C++ में ट्री की अधिकतम गहराई या ऊंचाई खोजने का प्रोग्राम C++ में ट्री की अधिकतम गहराई या ऊंचाई खोजने का प्रोग्राम

    इस समस्या में, हमें एक बाइनरी ट्री दिया गया है। हमारा कार्य दी गई ट्री की अधिकतम गहराई या ऊंचाई खोजने के लिए एक प्रोग्राम लिखना है। आइए एक उदाहरण से समस्या को समझते हैं, ट्री की ऊंचाई 3 है। ट्री की अधिकतम ऊंचाई खोजने के लिए, हम उसके लेफ्ट और राइट सबट्री की ऊंचाई की जांच करेंगे और दोनों के अधिकत

  1. अपने विंडोज 11 पीसी का IP एड्रेस ढूंढें: चरण-दर-चरण गाइड अपने विंडोज 11 पीसी का IP एड्रेस ढूंढें: चरण-दर-चरण गाइड

    आपके इंटरनेट कनेक्शन में कुछ गड़बड़ है? जब आप विभिन्न समाधानों के साथ अपना हाथ आजमा रहे हैं, तो अपने कंप्यूटर का IP एड्रेस जानना काम आ सकता है। अनजान लोगों के लिए, एक IP एड्रेस, इंटरनेट प्रोटोकॉल एड्रेस का संक्षिप्त रूप, एक अद्वितीय संख्यात्मक एड्रेस है जो इंटरनेट पर आपके डिवाइस की पहचान करता है। आ