Files
semih 494781e84f Dersler ve Temeller; web örnekleri PORT ortam değişkenini okur
- dersler/: 29 kısa ders (açıklama, çalıştırılabilir örnek, alıştırma). Her örneğin
  ve alıştırma çözümünün çıktısı Online IDE'nin hazırlık adımında gerçekten koşulup
  dosyadakiyle karşılaştırılır; biçim dersler/BICIM.md.
- temeller/: tek konulu 12 başlangıç programı.
- web/anket, web/kisalt, web/pano: port PORT ortam değişkeninden okunur (Online IDE
  önizlemesi 8080 verir), yoksa eski sabit port.
- README: öğrenme bölümü, Online IDE bağlantısı.
2026-10-17 22:07:47 +03:00

3.1 KiB

baslik, bolum, ozet
baslik bolum ozet
kir ve devam Akış denetimi Döngüden erken çıkmak ve bir turu atlamak

Bazen döngünün sonuna kadar gitmek gerekmez: aradığını bulmuşsundur ya da bu turdaki öğe seni ilgilendirmiyordur. kir döngüden tümden çıkar, devam yalnız bu turu atlar.

kir: döngüden çık

Listede ilk başarısız notu arayalım. Bulunca aramaya devam etmenin anlamı yok.

notlar = [62, 81, 48, 77, 35]
dongu n icinde notlar:
    eger n < 50:
        yazdir(f"İlk başarısız not: {n}")
        kir
    yazdir(f"{n} geçti")
62 geçti
81 geçti
İlk başarısız not: 48

kir çalışınca döngü hemen biter; 77 ve 35'e hiç bakılmaz.

devam: bu turu atla

devam'a gelince turun geri kalanı atlanır, döngü bir sonraki öğeyle sürer.

dongu i icinde 1..10:
    eger i % 3 == 0:
        devam
    konsol.yaz(f"{i} ")
yazdir()
1 2 4 5 7 8 10

Burada konsol.yaz kullandık: yazdir gibidir ama satırı bitirmez, böylece sayılar yan yana dizilir. En sondaki boş yazdir() satırı kapatır.

iken dogru ile kir

Kaç tur süreceği belli olmayan bir döngüyü iken dogru: ile başlatıp koşul sağlanınca kir ile bitirebilirsin.

n = 27
adim = 0
iken dogru:
    eger n == 1:
        kir
    eger n % 2 == 0:
        n = n // 2
    degilse:
        n = 3 * n + 1
    adim += 1
yazdir(f"27, {adim} adımda 1'e ulaştı.")
27, 111 adımda 1'e ulaştı.

Dikkat: iken dogru: yazdıysan döngünün içinde mutlaka bir kir olmalı ve ona bir gün ulaşılmalı. Yoksa döngü sonsuza dek döner.

İç içe döngüde kir

kir yalnız içinde bulunduğu döngüden çıkar; dıştaki döngü devam eder.

dongu satir icinde 1..3:
    dongu sutun icinde 1..3:
        eger sutun > satir:
            kir
        konsol.yaz(f"{satir}{sutun} ")
    yazdir()
11
21 22
31 32 33

Hepsi bir arada: asal sayılar

Bir sayı, 1 ve kendisinden başka böleni yoksa asaldır. Her aday için bölen arıyoruz; bulunca kir ile içteki döngüden çıkıyoruz.

dongu aday icinde 2..30:
    asal = dogru
    bolen = 2
    iken bolen * bolen <= aday:
        eger aday % bolen == 0:
            asal = yanlis
            kir
        bolen += 1
    eger asal:
        konsol.yaz(f"{aday} ")
yazdir()
2 3 5 7 11 13 17 19 23 29

Alıştırma

`urunler` listesinde ilk `"süt"`ü bul: bulunduğu sırayı (1'den sayarak) `süt 3. sırada` biçiminde yazdır ve döngüden çık.
%%%
urunler = ["ekmek", "peynir", "süt", "yumurta", "süt"]
sira = 0
dongu u icinde urunler:
    sira += 1
    # buraya yaz
%%%
urunler = ["ekmek", "peynir", "süt", "yumurta", "süt"]
sira = 0
dongu u icinde urunler:
    sira += 1
    eger u == "süt":
        yazdir(f"süt {sira}. sırada")
        kir
%%%
süt 3. sırada
1'den 20'ye kadar sayıları gez. Çift sayıları `devam` ile atla, tek sayıların toplamını bulup yazdır.
%%%
toplam = 0
dongu i icinde 1..20:
    # buraya yaz
yazdir(toplam)
%%%
toplam = 0
dongu i icinde 1..20:
    eger i % 2 == 0:
        devam
    toplam += i
yazdir(toplam)
%%%
100