Sunum yükleniyor. Lütfen bekleyiniz

Sunum yükleniyor. Lütfen bekleyiniz

Bölüm 4: Kontrol Yapıları I (Seçim Yapma)

Benzer bir sunumlar


... konulu sunumlar: "Bölüm 4: Kontrol Yapıları I (Seçim Yapma)"— Sunum transkripti:

1 Bölüm 4: Kontrol Yapıları I (Seçim Yapma)
C++ Programming: Program Design Including Data Structures, Third Edition Bölüm 4: Kontrol Yapıları I (Seçim Yapma)

2 Dersin Amaçları Bu Bölümde :
Kontrol yapıları ile ilgili bilgi verilecektir. İlişkisel (relational) ve mantıksal ( logical) operatörler üzerinde işlemler yapılacaktır. Mantıksal (Boolean) ifadelerin oluşturulması ve bunlarla ilgili ifadeler incelenecektir. Seçmeli kontrol yapılarının nasıl kullanıldığı if, if...else, ve switch ifadeleri açıklancaktır. C++ Programming: From Problem Analysis to Program Design, Third Edition

3 Kontrol Yapıları Bilgisayarların işleyişi
- Sıralı komutların işlenmesi ile - Seçmeli (dallanma ile , seçim yaparak) olarak - İteratif olarak tekrarlama ile (looping) gerçekleşebilir. Program belli koşullar sağlandığında bazı deyimleri çalıştırır. Mantıksal (Boolean) bir ifadenin betimlenmesi ile bir koşul doğru ya da yanlış olacaktır. Herhangi bir koşulun doğru değerlendirilmesi bunun karşılanmış olduğu anlamına gelir. C++ Programming: From Problem Analysis to Program Design, Third Edition

4

5 İlişkisel Operatörler (İşleçler)
İlişkisel Operatörler (Relational operators): Çeşitli karşılaştırmalar yapar. İki operand (binary-ikili) gerektirir İfade true (doğru) ise 1 , aksi taktirde 0 döndürür Farklı veri tiplerinin karşılaştırması öngörülemeyen sonuçlar verebilir. Örneğin, 8 < '5' karşılaştırması yapılamaz Karşılaştırmada sıfırdan farklı herhangi bir değer true olarak değerlendirilir. C++ Programming: From Problem Analysis to Program Design, Third Edition

6

7

8 string Tiplerinin Karşılaştırması
İlişkisel operatörler dizgilere de (strings) uygulanır. Dizgiler ilk karakterden başlamak üzere karakter karakter karşılaştırılır. Bu karşılaştırma: ya bir uyuşmazlık (mismatch) ile karşılaşana kadar, ya da karakterlerin hepsi eşit bulunana kadar devam eder. Farklı uzunluktaki iki dizgi karşılaştırılıyorsa, karşılaştırma daha kısa olan dizginin son karakterine eşittir. Kısa olan dizgi uzun olan dizgiden daha küçüktür. C++ Programming: From Problem Analysis to Program Design, Third Edition

9 string Veri Tipinin Karşılaştırılması
Aşağıdaki bildirimler veriliyor: string str1 = "Hello"; string str2 = "Hi"; string str3 = "Air"; string str4 = "Bill"; C++ Programming: From Problem Analysis to Program Design, Third Edition

10

11

12

13 Mantıksal (Boolean) Operatörler
Mantıksal (Boolean) operatörler kullanılarak mantıksal ifadeler birleştirilir. Üç tane mantıksal (Boolean) operatör tanımlanır: ! - değil (tekli operatör) && – ve (ikili operatör) || - veya (ikili operatör) Mantıksal operatörler işleneç (operand) olarak sağına ve soluna mantıksal değeler alırlar Mantıksal bir ifadenin önüne ! konulduğunda sonuç ifadenin değerinin tersidir. C++ Programming: From Problem Analysis to Program Design, Third Edition

14

15

16

17

18 Operatörlerin Önceliği
İlişkisel ve mantıksal operatörler soldan sağa doğru değerlendirilir. Birleşme özelliği (associativity) soldan sağa doğrudur. Parantezler önceliklidir. C++ Programming: From Problem Analysis to Program Design, Third Edition

19

20 Kestirme Hesaplamalar
Kestirme hesaplamalar: Mantıksal bir ifadenin değerlendirmesi ifadenin değeri belirlendiğinde sonlandırılır. Örnek: : (age >= 21) || ( x == 5) //Satır 1 (grade == ‘A’) && (x >= 7) //Satır 2 C++ Programming: From Problem Analysis to Program Design, Third Edition

21 Mantıksal İfadeler bool veri tipi ve mantıksal ifadeler
bool veri tipinin sadece mantıksal (logical) true ve false değerleri vardır bool, true, ve false birer anahtar sözcüktür (reserved word). true tanıtıcısının değeri 1 false tanıtıcısının değeri 0 olarak tanımlanır. C++ Programming: From Problem Analysis to Program Design, Third Edition

22

23

24

25 Mantıksal (Boolean) İfadeler
Mantıksal ifadeler tahmin edilemezler Aşağıdaki ifade 0 , num ve 10 arasındaki karşılaştırmayı simgelemektedir. 0 <= num <= 10 Bu karşılaştırma sonucu her zaman true olacaktır. Çünkü 0 <= num eşitsizliği 0 ya da 1 sonucunu verir. Böylece: 0 <= 10 true ve 1 <= 10 true olarak sonuçlanacaktır. Bu ifadeyi doğru yazımı aşağıdadır: 0 <= num && num <= 10

26 Tek-yollu (if) Seçim Tek yollu seçimin sözdizimi : şeklindedir.
if (ifade) deyim şeklindedir. Deyimin çalıştırılması için ifadenin değeri true olmalıdır. İfadenin değeri false ise ifade işleme girmez ve program bir sonraki deyime geçer. C++ Programming: From Problem Analysis to Program Design, Third Edition

27 Tek Yollu (if) Seçimi İfade karar verici olarak da adlandırılır; çünkü ifade ile sonraki deyimin çalıştırılıp çalıştırılmayacağına karar verilir. İfadeyi takip eden deyim eylem deyimi (action- statement) olarak adlandırılır. İfade genellikle mantıksal bir ifadedir. Deyim herhangi birC++ deyimidir. if anahtar sözcüktür C++ Programming: From Problem Analysis to Program Design, Third Edition

28

29

30

31

32 İki Yollu (if…else) Seçim
İki yollu seçim if (ifade ) deyim1 else deyim2 şeklinde gerçekleşir. İfade true ise, deyim1 çalıştırılır Aksi halde deyim2 çalıştırılır. deyim1 ve deyim2 herhangi C++ deyimleridir. else anahtar sözcüktür (reserved word) C++ Programming: From Problem Analysis to Program Design, Third Edition

33

34

35

36 Bileşik Deyim Compound Statement
Bileşik değim (block of statements): { deyim1; deyim2; . deyimn; } şeklinde verilir. Bileşik deyim tek bir deyimdir. C++ Programming: From Problem Analysis to Program Design, Third Edition

37 Bişleşik Deyim Örneği if (age > 18) {
cout << "Eligible to vote." < <endl; cout << "No longer a minor." << endl; } else cout << "Not eligible to vote.“ << endl; cout << "Still a minor." << endl; C++ Programming: From Problem Analysis to Program Design, Third Edition

38 Yuvalanmış (Nested) if deyimi
Yuvalanma (Nested) : Bir kontrol deyimi diğerinin içindedir. else anahtar sözcüğü, en son yazılan ve bir else ile ilişkilendirilmemiş olan bir if sözcüğü ile ilişkilidir. C++ Programming: From Problem Analysis to Program Design, Third Edition

39

40

41

42

43 Şartlı Operatör (Conditional Operator) (?:)
Şartlı operatör (?:) üç tane (ternary) argüman alır. Şartı operatör kullanmanın sentaksı : ifade1 ? ifade2 : ifade3 Eğer expression1 true ise , koşullu ifadenin sonucu ifade2 olur. aksi halde sonuç ifade3 olacaktır. C++ Programming: From Problem Analysis to Program Design, Third Edition

44 switch Yapıları switch yapısı : if-else yapısına alternatiftir.
Önce switch ifadesi değerlendirilir. İfadenin değeri hangi eylemin gerçekleştirileceğini belirler İfade bazen seçici (selector) olarak ifade edilir. C++ Programming: From Problem Analysis to Program Design, Third Edition

45 switch Yapıları İfade değeri sadece tamamlanmış bir birim (entegral) olmalıdır. İfadenin değeri çalıştırılmak üzere hangi değerin seçildiğini belirler. Herhangi bir durum sadece bir kere gerçekleşecektir. C++ Programming: From Problem Analysis to Program Design, Third Edition

46

47 switch Deyimi Kuralları
İfadenin değeri bir bir case değeri ile eşleştiğinde - -Deyimler break deyimine kadar çalışacaktır. İfadenin değeri herhangi bir case değeri ile eşleşmezse - default anahtar sözcüğünü izleyen deyimler çalıştırılır Eğer hiçbir default anahtar sözcüğü yoksa, ve hiçbir eşleşme oluşmamışsa tüm switch deyimi atlanır. Herhangi bir break deyimi ise, switch yapısından çıkılmasına neden olur.


"Bölüm 4: Kontrol Yapıları I (Seçim Yapma)" indir ppt

Benzer bir sunumlar


Google Reklamları