Parçalara ayırma ve metotlar
Büyük problemi küçük, adı olan parçalara böl; her parçayı ayrı çöz, ayrı test et.
"Not takip programı yaz" ürkütücü. "Not oku", "ortalama hesapla", "harf ver", "listeyi yazdır" — dördü de tanıdık. Parçalara ayırma (decomposition), büyük problemi zaten çözebildiğin küçük problemlere indirmektir.
Metot: adı olan algoritma
Her parça bir metot olur: girdisi (parametre), işlemi, çıktısı (dönüş değeri) vardır. ortalama(notlar) çağırdığında içini düşünmezsin — bir kez doğru yazdın, her yerde kullanırsın.
Test edilebilirlik
Metot küçük olunca test kolay: ortalama([80, 90, 100]) 90 vermeli. Bütün program çalışmadan parçayı doğrulayabilirsin.
flowchart TD A([Ana program]) --> B[notlar = notlariOku] B --> C[ort = ortalama notlar] C --> D[harf = harfVer ort] D --> E[/sonucu yaz/] E --> F([Bitir])
1METOT ortalama(liste)2 toplam ← 03 her x için: toplam ← toplam + x4 DÖNDÜR toplam / uzunluk(liste)56ANA7 notlar ← notlariOku()8 ort ← ortalama(notlar)9 harf ← harfVer(ort)10 YAZ ort, harf
1static double Ortalama(int[] liste)2{3 int toplam = 0;4 foreach (int x in liste) toplam += x;5 return (double) toplam / liste.Length;6}78int[] notlar = { 80, 90, 100 };9Console.WriteLine(Ortalama(notlar));
"Sınıf listesinden en yüksek ortalamalı öğrenciyi bul" problemini en az dört metoda böl; her metodun girdisini ve çıktısını yaz. Sonra hangi metodu ilk yazacağını ve nasıl test edeceğini söyle.