canlı ~/duyurular $
Algoritma müfredatı
ünite 1 · Temeller · ders 1.1

Algoritma nedir?

Bir işi bilgisayarın da yapabileceği kadar açık adımlara bölmek.

6 dk 1 / 22

Çay demlemeyi anlatırken "su kaynat, çayı koy, bekle" dersin. Ama bir robota anlatsan bu yetmez: ne kadar su, hangi ısıda, kaç dakika? Algoritma, bir işi hiç yorum gerektirmeyecek kadar açık, sıralı adımlara bölmektir.

Üç şart

  • Kesin: her adım tek anlama gelir. "Biraz bekle" değil, "3 dakika bekle".
  • Sıralı: adımların yeri önemlidir. Suyu kaynatmadan çayı koyarsan sonuç değişir.
  • Sonlu: bir yerde biter. Sonsuza kadar süren bir tarif, tarif değildir.

Girdi → İşlem → Çıktı

Her algoritmanın bir girdisi (elindekiler), bir işlemi (yaptıkların) ve bir çıktısı (sonuç) vardır. Çayda girdi su ve çay, çıktı bardaktaki demli çay. Programda girdi klavyeden gelen sayı, çıktı ekrana yazılan sonuç.

Bilgisayar zeki değildir; sadece çok hızlı ve tam söyleneni yapar. Algoritma yazmak, bu yüzden düşünmeyi yazıya dökmektir.
akış şeması elips: başla/bitir · dikdörtgen: işlem · paralelkenar: girdi/çıktı · baklava: karar
flowchart TD
  A([Başla]) --> B[/Girdi: su, çay/]
  B --> C[Suyu kaynat]
  C --> D[Çayı demliğe koy]
  D --> E[Kaynar suyu ekle]
  E --> F[10 dakika bekle]
  F --> G[/Çıktı: demli çay/]
  G --> H([Bitir])
sözde kod adımlar
1BAŞLA2  su ve çayı al3  suyu kaynat4  çayı demliğe koy5  kaynar suyu ekle6  10 dakika bekle7  çayı bardağa koy8BİTİR
senin sıran

Sabah okula hazırlanmanı 8–12 adımlık bir algoritma olarak yaz. Her adım tek bir iş olsun; "hazırlan" gibi belirsiz adımlar yasak. Sonra sırayı değiştirince neyin bozulduğunu bul (çorabı ayakkabıdan sonra giymek gibi).

kendini sına "Sayıyı yeterince büyütene kadar 2 ile çarp" adımı üç şarttan hangisini bozuyor?
Kesinliği: "yeterince" belirsiz. "100'ü geçene kadar" gibi ölçülebilir bir koşul olmalı.
İşaret bu tarayıcıda kalır. XP için giriş yap — her ders +15 XP.