C# İkinci Dereceden Bir Bilinmeyenli Denklemin Köklerini Bulma

Merhabalar, C# derslerimize kaldığımız yerden devam ediyoruz. Bu dersimizde ikinci dereceden bir bilinmeyenli bir denklemin kökleri var mı, varsa kökleri nedir bulmayı anlatacağım. Hadi başlayalım !
İkinci dereceden bir bilinmeyenli denklemler ax2+bx+c şeklinde olan denklemlerdir ve bu denklemlerin köklerinin olup olmadığını Δ (delta) adı verilen bir sabitin bulunması ile tespit edebiliriz.
- Δ < 0 ise denklemin reel bir kökü yoktur,
- Δ = 0 ise denklemin 1 tane reel kökü vardır,
- Δ > 0 ise denklemin birbirinden farklı 2 tane reel kökü vardır diyebiliyoruz.
Δ ise b2-4ac formülü ile bulunuyor. Δ < 0 ise zaten herhangi birşey yapmamıza gerek yok, Δ > 0 ise formülü ile, Δ = 0 ise -b/2a formülü ile denklem köklerini bulabiliyoruz.
Şimdi bizde kullanıcıdan öncelikle ikinci dereceden bir bilinmeyenli bir denklem isteyelim. Tabi bunu x2 kat sayısını ayrı, x katsayısını ayrı ve sabit sayıyı ayrı alalım ve her birini bir değişkene atayalım.
Console.Write("a Değerini Giriniz: ");
double a = Convert.ToDouble(Console.WriteLine());
Console.Write("b Değerini Giriniz: ");
double b = Convert.ToDouble(Console.WriteLine());
Console.Write("c Değerini Giriniz: ");
double c = Convert.ToDouble(Console.WriteLine());
Evet şu an denklemimiz hazır, hadi gelin şimdi Δ değerini hesaplayalım.
double delta = b * b - 4 * a * c;
Δ değerini de hesapladık ve artık bu değer üzerinden denklemin kökü var mı yok mu bakabiliriz. Varsa kök yada kökleri hesaplayalım, yoksada konsol ekranına “denklemin kökü yoktur” yazalım.
if(delta < 0)
Console.WriteLine("Denklemin kökü yoktur.");
else if(delta == 0)
{
double kok = (-1 * b) / 2 * a;
Console.WriteLine("Denklemin Kökü: " + kok);
}
else
{
double kok1 = (-1 * b - Math.Sqrt(delta)) / 2 * a;
double kok2 = (-1 * b + Math.Sqrt(delta)) / 2 * a;
Console.WriteLine("Denklemin {0} ve {1} Olmak Üzere 2 Kökü Vardır.", kok1, kok2);
}
Bu son kodda yaptığımız işlemi açıklayacak olursak, delta isimli değişkenimiz denklemin kökünü bulmak için kullandığımız Δ değerine karşılık geliyor. Ve if-else kullanarak delta değerinin 0’dan küçük, 0’a eşit yada 0’dan büyük olup olmadığını kontrol ettik. Daha öncede anlattığım gibi Δ < 0 ise denklemin kökü yoktur ve bizde buna uygun şekilde konsol ekranına “Denklemin kökü yoktur” yazdırdık. Δ = 0 veya Δ > 0 ise denklemin kökü vardır ve bizde buna göre hesaplamaları yaparak kullanıcıya bildirdik. Evet bu dersimizde bu kadardı, daha toplu olması açısından yazdığımız kodları aşağıya bırakıyorum;
if(delta < 0)
Console.WriteLine("Denklemin kökü yoktur.");
else if(delta == 0)
{
double kok = (-1 * b) / 2 * a;
Console.WriteLine("Denklemin Kökü: " + kok);
}
else
{
double kok1 = (-1 * b - Math.Sqrt(delta)) / 2 * a;
double kok2 = (-1 * b + Math.Sqrt(delta)) / 2 * a;
Console.WriteLine("Denklemin {0} ve {1} Olmak Üzere 2 Kökü Vardır.", kok1, kok2);
}
C# derslerimize buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.