class KESS{} hazır!


Hikayeyi başından alalım. Geçenlerde bir Matris sınıfı yazmaya başladım C++ ta. İleride yazmayı düşündüğüm bir hesap programında kullanmak istiyordum. Her şey çok güzel gidiyordu. Taki Gauss Eliminasyon metodunu gerçekleştiren fonksiyonu yazıncaya değin. Gauss Eliminasyon'un en zorlu kısım olduğunu biliyordum. Ama ilk sorunun float değişken türünden kaynaklanacağını hiç tahmin etmiyordum. Tahmin edersinizki matris'in her bir elemanı float. Fakat float'ları birbiriyle işleme sokarken 0 çıkması gereken sonuçlar 0 çıkmıyor. 0'a çok yakın rakamlar çıksa da bu programda kabul edilemez bir hata. Hesaplamanın sonucunu ciddi bir şekilde etkiliyor. Yine de kendimi şanslı hissettim. ne de olsa ilk denediğim örnekte çok ciddi bir hata yakalamıştım. Hiç farketmeyebilirdim de.

Float değişken türü ile ilgili birkaç makale okuduktan sonra karar verdim ki: bu float adam olmaz.Zaten yazmayı planladığım rasyonel sayıları kullanmayı sağlayacak sınıfı yazmaya karar verdim. Bu şekilde alel acele KESS sınıfını yazmaya başladım. Daha önce bu sınıfı yazmamış olmamın sebebi. Kesirleri sadeleştirmek için performanslı ve basit bir yöntem bulamamış olmamdı. Ben de bu eksikliği daha sonra giderme kararıyla KESS sınıfını yazdım. Dün bitti. Henüz fire vermedi. 😀 Sağlam gözüküyor. Tamsayı demek olan integer değişken türüyle yapılan bir çok fonksiyon KESS ile de mümkün. Ama bütün bunlar 4 işlem ve karşılaştırma işlemlerinden ibaret. Umarım şimdilik bunlar yeterli olur. Sıra Matris sınıfının floatlardan kurtarılıp yerlerine KESS'lerin konulması. Matris sınıfının ancak yarısı diyebileceğim tamamlanmış kısmında tam 25 yerde float geçiyor. Hadi bakalım. Bana kolay gelsin…!


Bir cevap yazın

E-posta hesabınız yayımlanmayacak.