Page 83 - Bilgisayar Bilimi | Kur 1
P. 83
7.1. Karar Mantık Yapısı
Karar yapıları, bilgisayara iki ya da daha fazla seçenek arasından seçim yapmak hakkı tanıyan önemli
ve güçlü bir mantık yapısıdır. Eğer karar yapıları olmasaydı, bilgisayarlar hızlı bir hesap makinesi olma-
nın ötesine gidemezdi. Karar yapıları, insanın düşünme tarzına çok uygun olduğu için anlaşılması son
derece kolaydır. Karmaşık durumlarda karar vermek zorlaştığı için programcının kararların arkasında
yatan nedenleri çok iyi anlayarak tasarım yapması gerekir. Ayrıca bir karar durumunun çok farklı şekil-
lerde ifade edilebilmesi de bu karmaşıklığa neden olabilmektedir.
Karar mantık yapısı if-then-else (eğer-koşul sağlanırsa-x, değilse y) yönergesini kullanır. Bu durum-
da, eğer bir koşul doğru ise belli yönergeler, değilse farklı yönergeler çalıştırılabilir. “else” kısmı kulla-
nılmak zorunda değildir, bazen bu durumlarda hiçbir yönerge olmayabilir. Aşağıdaki yapıyı ve satır
başlarındaki boşlukları inceleyelim.
If<koşullar>
Then
Doğru <doğru koşul için yönergeler>
Else
Yanlış <yanlış koşul için yönergeler>
Bu kodlamada yer alan koşul;
1. Mantıksal bir ifade (AND (VE), OR (YA DA) veya NOT (DEĞİL))
2. İlişkisel operatörleri kullanan bir ifade (<, >, <=, >=, =),
3. Sonucu doğru ya da yanlış çıkan mantıksal bir değişken,
4. Bu üç seçeneğin birleşiminden oluşan bir ifade olabilir.
Koşullara ilişkin açıklamalar aşağıdaki gibi olabilir:
1. A < B (A ve B sayısal, karakter ya da dizi gibi aynı veri türündedir)
2. X + 5 > = Z ( X ve Z sayısal veridir)
3. E < 5 OR F > 12 ( E ve F sayısal veridir)
4. (A < B) AND (X = 10 OR Y >15) (A ve B sayısal, karakter ya da dizi gibi aynı veri türündedir
ve X ve Y sayısal veridir)
Mantıksal operatörler bir ya da daha fazla durumu bağlamak için kullanılır. Örneğin sürücü belgesi
alabilmek için 18 yaşını doldurmuş ve bir sürücü kursunu başarı ile tamamlamış olma şartı vardır. Bu
örnekteki kontrol bu iki durumu AND operatörü ile bağlayarak kontrol etmeyi gerektirir.
7.2. Tek Koşullu Yapılar
Tek bir koşulun sorgulandığı döngü yapısı için akış şeması aşağıdaki gibidir.
82