Algo-I
6 Seçim ve Döngü Portfolyo KT1

Döngüler I: while, do-while, for, Gözcü Değer ve KT1 Teslimi

Bilgisayarın asıl gücü tekrar: üç döngü türü, hangi durumda hangisi, gözcü değerle biten döngü ve kullanıcıyı doğru girdiye zorlayan döngü. KT1 teslim haftası: 6 Kasım Cuma 23.59.

Teori
Cuma 30 Ekim · A 09.15 / B 13.15
Laboratuvar
A Çarşamba 4 Kasım 13.15 · B Perşembe 5 Kasım 15.15(teoriden bir hafta sonra) Lab içeriği ↓
Ders planı
Tekrar yapıları: while, do-while ve for döngüleri; sayaç kontrollü ve gözcü değer (sentinel) kontrollü döngüler; girdi doğrulama döngüsü

Teori

Öğrenme hedefleri

Bu haftanın sonunda:

  • 1 while, do-while ve for döngülerini yazar; aralarındaki farkı bir cümleyle söyler.
  • 2 Sayaç kontrollü ve gözcü değer kontrollü döngü tasarlar.
  • 3 Girdi doğrulama döngüsü (geçerli sayı girene kadar sor) yazar.
  • 4 Sonsuz döngü ve bir eksik/bir fazla (off-by-one) hatalarını tanır ve düzeltir.
  • 5 KT1: depo açılmış, README'de konu ve ayırt edici kural yazılı, Scanner ile girdi alıp en az bir if/else ile karar veren ilk sürümü 6 Kasım Cuma 23.59'a kadar push eder.

Haftanın Bulmacası

Sayı tahmin oyunu kağıtta: aklımda 1-100 arası bir sayı var, yalnızca “büyük/küçük” diyorum. En kötü durumda kaç soruda bulursunuz? (7.) Bu, hem döngünün hem de 11. haftadaki ikili aramanın tohumu.

Ders Notları

İşlenecek başlıklar:

  • Neden döngü: 100 kez println yazmamak için
  • while döngüsü: koşul, gövde, güncelleme; sonsuz döngü
  • do-while: en az bir kez çalışan döngü; menüler için
  • for döngüsü: başlangıç, koşul, artış; hangi döngü ne zaman
  • Sayaç kontrollü döngü; toplam ve ortalama hesaplama
  • Gözcü değer (sentinel) kontrollü döngü: 0 girilene kadar topla
  • Girdi doğrulama döngüsü: geçerli değere kadar tekrar sor
  • Sayı tahmin oyunu (while), çıkarma quiz’i (while)
  • Sayısal hata: 0.1’i on kez toplamak; double ile eşitlik karşılaştırmama
  • Off-by-one hataları
  • KT1: portfolyo deposu, konu ve seçim yapılı ilk sürüm (6 Kasım Cuma 23.59)

Temel Kavramlar

  • Döngü (loop): Bir bloğu koşul doğru olduğu sürece tekrar çalıştırma.
  • Sayaç kontrollü döngü: Kaç kez döneceği baştan belli.
  • Gözcü değer (sentinel): Girdinin bittiğini bildiren özel değer; ör. 0 veya -1.
  • do-while: Koşulu sonda kontrol eden, gövdesi en az bir kez çalışan döngü.
  • Sonsuz döngü: Koşulu hiç false olmayan döngü; güncelleme satırı unutulunca.

Sahadan Örnekler

  • Kasa yazılımı: ürün okut, okut, okut, “toplam” tuşu gözcü değerdir.
  • Şifre denemesi: doğru girene kadar sor ama üç denemeden sonra kilitle; iki koşullu döngü.

Laboratuvar

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

Bu haftanın araçları

  • Java Playground
  • JDK 21
  • VS Code

Etiketler:whiledo-whileforgözcü değersentineldöngüKT1

Laboratuvar · Hafta 6

Lab 6 · Döngülerle Tekrar ve KT1 Teslimi

while, do-while ve for ile seri toplamı, sayı tahmin oyunu, gözcü değerle biten toplama ve girdi doğrulama döngüsü; portfolyonun ilk sürümünün (KT1) teslimi.

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

Lab hedefleri

  • 1 Üç döngü türünün her biriyle en az bir program yazar.
  • 2 Gözcü değerle biten ve girdi doğrulayan döngüler kurar.
  • 3 Sonsuz döngüye düşen bir programı tanır ve düzeltir.
  • 4 KT1: README'de konu ve ayırt edici kural yazılı, Scanner ile girdi alan ve en az bir if/else ile karar veren ilk sürümü 6 Kasım Cuma 23.59'a kadar push eder.

Bu lab neyi uyguluyor?

6. 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 6 deponuza push edin (bağlantı lab günü verilir; depo adı algo1-lab06-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 (KT1) ayrı bir depodur: kilometre taşı sürümünü lab deposuna değil, Classroom 50 ile verilen portfolyo deponuza push edin; 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
  • Git

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