Mesut.Erdemir: Bir yazılımcının günlüğü..

C++ İle Kök Bulma

closeBu yazı 9 ay 14 gün önce yayınlanmış olduğundan güncelliğini yitirmiş veya içeriğindeki bilgilerin geçerliliği kaybolmuş olabilir. Herhangi bir yanlış anlaşılmadan bu site sorumlu değildir.

Bu makalemde, C++ dilini kullanarak, ikinci dereceden iki bilinmeyenli denkemin(AX2 + BX + C = 0) çözüm kümesini bulmayı göstereceğim. Ancak, başlamadan önce bir hatırlatma yapmak istiyorum. Program, Linux tabanlı sistemde geliştirilmiştir. Dolayısıyla standart C++ compiler(derleyici) kullanılmıştır. Bu yüzden, kodu Windows tabanlı sistemde derlemeye kalktığınızda, sonucu göremezseniz, nedeni Borland C kullanmanızdır. Eğer böyle birşey yaşıyorsanız, “include <conio.h>” ve “getch();” satırlarını bulup, başındaki yorum işaretini “//” kaldırmanız gerekmektedir. Eğer yine bir hata alıyorsanız, yorumlar kısmına yazabilirsiniz.

Programı kısaca özetleyecek olursak, içeride kullanacağımız fonksiyonlar için birkaç header(başlık) dosyasını, projeye aktarıyoruz. Hemen sonra, main metodu ile programa başlıyoruz. Değişkenleri tanımlayıp, bu değişkenlere veri girilmesini bekliyoruz. Veriler girildikten sonra, Delta karşılaştırması yapıyoruz ve durumlara göre sonuçlar üretiyoruz. En altta da Delta fonksiyonumuzu tanımlıyoruz ve geriye delta değerinin döndürülmesini sağlıyoruz. “%.3f”, virgülden sonra 3 basamak yaz demektir. Sanıyorum zor olabilecek başka bir yer yok. Diğerleri standart programlama deyimleri. Eğer bir sorunuz olursa, yorumlar kısmında çözmeye çalışırız.

// Header dosyaları include ediliyor
#include <stdio.h>
#include <math.h>
//#include <conio.h>

//delta fonksiyonu ve parametreleri tanımlanıyor
int delta(int a, int b, int c);
//ana fonksiyonumuz
int main()
{
 //değişkenler
 int a,b,c;
 float x1, x2;

 printf("'AX^2 + BX + C = 0' denklemini çözen Cpp programı\n\n");
 printf("A'yı giriniz.."); scanf("%d", &a);
 printf("B'yi giriniz.."); scanf("%d", &b);
 printf("C'yi giriniz.."); scanf("%d", &c);

 if(delta(a, b, c) > 0)
 {
 printf("2 adet kök vardır:\n");
 x1 = ((-b + sqrt(delta(a, b, c))) / 2*a);
 x2 = ((-b - sqrt(delta(a, b, c))) / 2*a);

 printf("x1=%.3f\nx2=%.3f",x1,x2);
 }
 else if(delta(a, b, c) == 0)
 {
 printf("1 adet kök vardır:\n");
 x1=(-b / 2*a);
 printf("x1=%.3f", x1);

 }
 else printf("Reel kök yoktur!");

 //printf("Programdan çıkmak için bir tuşa basınız..");
 //getch();
 return 0;

}

int delta(int a, int b, int c)
{
 //delta hesaplanıyor
 return (b*b) - 4*(a*c);
}

VN:F [1.9.3_1094]
Rating: 1.0/10 (1 vote cast)
C++ İle Kök Bulma, 1.0 out of 10 based on 1 rating

Bu konuyla ilgili hiçbir yazı bulunamadı!

  • bu program çok işe yaradı çok iyi olmuş peki kiriş yöntemiyle kök bulma nasıl oluyor c++ da bi bilgin varmı şimdiden teşekkürler

    VA:F [1.9.3_1094]
    Rating: 0.0/5 (0 votes cast)
    • Öncelikle yorumunuz için ben teşekkür ederim. C++ da bilgim var ama, kiriş yöntemi ile kök nasıl bulunuyor? hiçbir fikrim yok. Biraz googling yaptım ama karşıma net birşey çıkmadı.

      Bu arada, IE6 kullanıyorsunuz:) Hem güvenliğiniz için hem de surf keyfi açısından, Firefox veya Opera’yı kullanmanızı öneririm.

      VN:F [1.9.3_1094]
      Rating: 0.0/5 (0 votes cast)
  • bu kadar çabuk cevap beklemiyordum ilgilenmenize sevindim .bu kiriş yöntemiyle kök bulma işini hocamız sağolsun söyledi de yapın diye :( ( artık sizde yapamadıysanız sevgili hocamızın kaprisleriyle başbaşa kaldık demektir.neyse herşey için sağolun teşekkürler.

    VA:F [1.9.3_1094]
    Rating: 0.0/5 (0 votes cast)

Buraya yapılan yorumları RSS 2.0 beslemesinden takip edebilirsiniz.