Tekrardan merhaba, bir önceki yazıda algoritmanın ne olduğuna dair bilgiler edindik, akış şemalarında kullanılan sembollerin ne anlama geldiğini öğrendik ve bir problem belirleyip o problemi akış şemasıyla her adımını açıklayarak çözdük. Bu yazıda ise akış şemasıyla çözdüğümüz problemi nasıl test edeceğimizi öğreneceğiz. Amacımız çözüm olarak düşündüğümüz akış şemasının doğruluğunu kontrol etmek ve en iyi çözüm yolu olup olmadığını görebilmek.
Bir önceki yazıya gitmek için bu linke tıklayabilirsiniz: https://www.heryerdeyazilim.com/algoritma-ve-programlama-mantigi-1/
Yaptığımız akış şemasında başla ve bitir hariç diğer sembollere sırasıyla numaralar veriyoruz, test ederken her sembolde ne olduğunu rapor eder gibi tabloya aktarıyoruz. Tabloda en üst satırın; başına sembol numarası, sonuna ‘Yazılan’ (bilgisayar ekranına yazılacak olan şey yani çıktı sembolü), bu ikisinin arasına da belirlediğimiz değişkenleri yazıyoruz.
Örnek tablo aşağıdaki gibidir:
Bir örnekle olayı anlamaya çalışalım: Bir problem belirleyelim, akış şemasını oluşturalım ve test edelim.
Bu örnekte; bir sayıyı diğer bir sayıdan çıkaralım, bir sonuç elde edelim, sonucu ekrana yazdıralım.
Değişkenler:
D: Bir sayı
E: Bir sayı
sonuc: D – E işleminin sonucundaki değeri ifade eder
İki sayıyı toplayıp sonucunu yazdırdığımız algoritmayı şimdi de test edelim.
D değişkenimizin değeri 50, E değişkenimizin değeri 20 olsun.
Adım adım yapacağız, akış şemasından takip ederek ve dikkatlice okuyalım.
1 numaralı sembolde D ve E sayılarını girdik, yani bu adımda değişkenlerimizin değer aldığı sayıları tablodaki ilgili kısımlara yazdık. Kalan ‘sonuc’ ve ‘Yazılan’ sütunlarına ‘-‘ koyduk çünkü daha onları kullanmadık.
2 numaralı sembolde D sayısından E sayısını çıkardık ve ‘sonuc’ değişkeni bu işlemden çıkan değeri aldı. ‘sonuc’ değişkenin aldığı değeri ‘sonuc’ sütununa yazdık. Çıktı verilmediği için şimdilik ‘Yazılan’ sütununa ‘-‘ koyduk. D ve E sayıları artık bilindiği için onların değerini de hâlâ yazmaya devam ediyoruz.
3 numaralı sembolde ‘sonuc’ adlı değişkeni ekrana yazdırdık, yani ‘Yazılan’ sütununa çıktı sembolünün içindeki değeri yazıyoruz. Bizim algoritmamızda çıktı sembolünün içinde sonuc yazdığı için sonuc değişkeninin aldığı değeri ‘Yazılan’ sütununa yazıyoruz. D, E ve sonuc değişkenlerinin değerleri bilindiği için onları da hâlâ yazmaya devam ediyoruz.
Yazdıklarımızın tabloya dökülmüş hali:
Bir akış şemasını test ederken her ihtimali düşünmemiz gerekmektedir. Bu örnekte bunu şu şekilde açıklayabilirim; D sayısının E sayısından büyük olma durumunu test ettik ama aynı zamanda küçük olma durumunu, eşit olma durumunu da test etmeliyiz. Hepsinde doğru çalışıyorsa akış şemamız doğrudur. Diğer ihtimallerin tablosunu da siz bu örneği inceleyerek yaparsanız size faydası olacaktır.
Örnek olarak iki değişkenin birbirine eşit olduğunu varsaydığımız tabloyu aşağıya koyuyorum:
D değişkenimizin değeri ve E değişkenimizin değeri 40 olsun.
Biraz karışık gibi görünse de birkaç tekrar yaptıktan sonra eliniz alışacaktır. Tam anlaşılmadıysa tekrar akış şemasındaki sembol numaralarına bakarak üstte yapılan açıklamaları okursanız ve kendiniz bir tablo çizerek takip ederseniz aklınıza tam oturacağına eminim.
Anlaşılmayan bir yer veya önerileriniz varsa email@example.com ‘a mail atabilirsiniz. İyi günler diliyorum.