Algo-I
5 Seçim ve Döngü

Seçim Yapıları II: switch, Ternary ve Mantıksal Operatörler

Karar yapılarını tamamlıyoruz: çok yollu switch, tek satırlık ternary, koşulları birleştiren mantıksal operatörler ve kısa devrenin neden önemli olduğu. Portfolyo deposu bu hafta açılır; KT1 teslimi 6 Kasım.

Teori
Cuma 23 Ekim · A 09.15 / B 13.15
Laboratuvar
A Çarşamba 28 Ekim 13.15 · B Perşembe 29 Ekim 15.15(teoriden bir hafta sonra) Lab içeriği ↓
Ders planı
switch ifadesi, ternary (?:) operatörü, mantıksal operatörler (&&, ||, !, ^), kısa devre değerlendirme ve operatör önceliği

Teori

Öğrenme hedefleri

Bu haftanın sonunda:

  • 1 switch ile menü tarzı çok yollu seçim yazar; break'in rolünü açıklar.
  • 2 Ternary operatörü uygun yerde kullanır, kötüye kullanımını tanır.
  • 3 &&, ||, ! ile bileşik koşullar kurar ve doğruluk tablosuyla doğrular.
  • 4 Kısa devre değerlendirmenin bir hatayı nasıl önlediğini örnekle gösterir.

Haftanın Bulmacası

Kısa devre bulmacası: kağıtta beş bileşik koşul; her biri için “sağ taraf hiç değerlendirilir mi?” sorusuna cevap verin. Sonra Playground’da sağ tarafa bilerek sıfıra bölme koyup tahmini sınayın.

Ders Notları

İşlenecek başlıklar:

  • switch: case, break, default; String ve char üzerinde switch; yeni ok (->) sözdizimi
  • Ternary operatörü: koşul ? a : b
  • Mantıksal operatörler: && || ! ^; doğruluk tabloları
  • Kısa devre (short-circuit): && ve || sağ tarafı ne zaman atlar
  • Operatör önceliği tablosu; parantezle netleştirme
  • De Morgan kuralları: !(a && b)
  • Örnekler: loto, Çin zodyağı, artık yıl (mantıksal operatörlerle)
  • Portfolyo: depo açma, README’ye konu ve kuralı yazma; KT1’e doğru ilk seçim yapısı

Temel Kavramlar

  • switch: Bir değeri birçok sabit case ile karşılaştıran yapı.
  • break: switch’te sonraki case’e düşmeyi önler; unutulursa fall-through olur.
  • Ternary (?:): if/else’in ifade hali; bir değer üretir.
  • Kısa devre: a && b’de a false ise b hiç hesaplanmaz.
  • Doğruluk tablosu: Bir mantıksal ifadenin tüm girdi kombinasyonlarındaki sonucu.

Sahadan Örnekler

  • ATM menüsü: 1 para çek, 2 bakiye, 3 çık; switch’in doğal yaşam alanı.
  • Uçuş rezervasyon kuralları: (yaş >= 18 || veliVar) && koltukBos; kısa devre, veli kontrolünü gereksiz yere yapmayı önler.

Laboratuvar

Bu haftanın laboratuvarı bir hafta sonra yapılır (A Çarşamba 13.15, B Perşembe 15.15): Lab 5. Tarihler için Ders Hakkında sayfasındaki takvime bakın.

Bu haftanın araçları

  • Java Playground
  • JDK 21
  • VS Code
  • GitHub

Etiketler:switchternarymantıksal operatörkısa devreportfolyo

Laboratuvar · Hafta 5

Lab 5 · switch ve Mantıksal Operatörler

Menü tabanlı bir programı switch ile yazma, bileşik koşullar; portfolyo deposunu açıp README'ye konuyu yazma.

Yürüten
Arş. Gör. Ömer Miraç Kökçam
Laboratuvar sorumlu hocası
Tarihler (teoriden bir hafta sonra)
A Çarşamba 28 Ekim 13.15
B Perşembe 29 Ekim 15.15

Lab hedefleri

  • 1 switch ile menü tarzı program yazar; break unutulunca ne olduğunu gösterir.
  • 2 Bileşik koşulları doğruluk tablosuyla planlayıp koda döker.
  • 3 Portfolyo deposunu Classroom 50 bağlantısıyla açar, README'ye konusunu ve ayırt edici kuralını yazar.

Bu lab neyi uyguluyor?

5. haftanın teorisini. Laboratuvar teoriden bir hafta sonra yapılır: A şubesi Çarşamba 13.15, B şubesi Perşembe 15.15; tarihler Ders Hakkında takviminde.

Görevler

Teslim

Görev dosyalarınızı Classroom 50 bağlantısıyla açılan Lab 5 deponuza push edin (bağlantı lab günü verilir; depo adı algo1-lab05-KULLANICIADI). Otomatik kontrol sonucunu deponun Releases sayfasında görür, düzeltip tekrar push edebilirsiniz. Son teslim: lab haftasının Cuma 23.59’u. Lab’da lab sorumlu hocanıza 30 saniyede bir görevi anlatın. Portfolyo ayrı bir depodur (algo1-portfolyo-KULLANICIADI); KT1 sürümü oraya gider ve 6 Kasım Cuma 23.59’da toplanır. Yapay zeka sarı bölge: soru sorabilirsiniz, kod kopyalayamazsınız.

Lab araçları

  • JDK 21
  • VS Code
  • GitHub
  • Git

Lab sırasında kodu kendi bilgisayarınızda ya da Java Playground'da çalıştırabilirsiniz.