Kuadratik Denklemin Tüm Köklerini Bulmak için C Programı

Bu program kullanıcıdan bir kuadratik denklemin katsayılarını alır ve kökler (diskriminant ve karmaşık kökleri) görüntüler.

İkinci dereceden bir denklemin standart formu şudur:

ax2 + bx + c = 0, 
a, b ve c gerçek sayılardır ve 
a ≠ 0

b2-4ac terimi, ikinci dereceden bir denklemin ayırıcısı olarak bilinir.

Ayırt edici 0’dan büyükse, kökler gerçek ve farklıdır.
Ayrımcı 0’a eşitse, kökler gerçek ve eşittir.
Ayırt edici 0’dan küçükse, kökler karmaşık ve farklıdır.

Örnek: Kuadratik Denklemin Köklerini Bulma Programı

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

int main()
{
    double a, b, c, discriminant, root1, root2, realPart, imaginaryPart;

    printf("Katsayıları girin:  a, b ve c: ");
    scanf("%lf %lf %lf",&a, &b, &c);

    discriminant = b*b-4*a*c;

    // gerçek ve farklı köklerin durumu
    if (discriminant > 0)
    {
    // sqrt () işlevi karekökü döndürür
        root1 = (-b+sqrt(discriminant))/(2*a);
        root2 = (-b-sqrt(discriminant))/(2*a);

        printf("root1 = %.2lf and root2 = %.2lf",root1 , root2);
    }

    //Gerçek ve eşit kökler için
    else if (discriminant == 0)
    {
        root1 = root2 = -b/(2*a);

        printf("root1 = root2 = %.2lf;", root1);
    }

    // eğer kökler gerçek değilse
    else
    {
        realPart = -b/(2*a);
        imaginaryPart = sqrt(-discriminant)/(2*a);
        printf("root1 = %.2lf+%.2lfi and root2 = %.2f-%.2fi", realPart, imaginaryPart, realPart, imaginaryPart);
    }

    return 0;
} 

Çıktısı :

Katsayıları girin a, b vec: 2.3
4
5.6
Kökler : -0.87+1.30i ve -0.87-1.30i