temelden ileri seviyeye
Algoritma
Kod yazmadan önce düşünmeyi öğrenmek. Her ders bir fikri anlatır, akış şemasını çizer, sözde kodunu yazar, aynı şeyi C# ile gösterir ve kutuların değerini adım adım izler. Sonra sıra sende.
6 ünite
22 ders
165 dk
+15 XP / ders
ilerlemen
0 / 22
buradan başla
Algoritma nedir?
1.1 · 6 dk
İşaretler bu tarayıcıda kalır; XP için giriş yap.
Temeller
Algoritma ne, nasıl yazılır, akış şeması nasıl okunur.
25 dk
1.1
Algoritma nedir?
Bir işi bilgisayarın da yapabileceği kadar açık adımlara bölmek.
6 dk
1.2
Girdi, işlem, çıktı
Bir problemi çözmeye başlamadan önce üç soru: elimde ne var, ne yapacağım, ne elde edeceğim?
6 dk
1.3
Akış şeması sembolleri
Elips başla/bitir, dikdörtgen işlem, paralelkenar girdi/çıktı, eşkenar dörtgen karar.
7 dk
1.4
Değişken ve atama
x ← x + 1 matematikte saçma, algoritmada en doğal şey.
6 dk
Karar Vermek
Koşullar, dallanma, mantıksal bağlaçlar.
22 dkTekrar Etmek
Sayaçlı ve koşullu döngüler, biriktirme, iç içe döngü.
31 dk
3.1
Sayaçlı döngü
"10 kez yap" demenin yolu: başlangıç, koşul, artış.
8 dk
3.2
Koşullu döngü
Kaç kez döneceğini bilmediğin zaman: doğru cevap gelene kadar sor.
7 dk
3.3
Biriktirme: toplam, sayaç, en büyük
Döngünün en sık kullanıldığı üç kalıp.
8 dk
3.4
İç içe döngü
Çarpım tablosu, satır-sütun, desen çizmek: dıştaki bir tur atarken içteki hepsini atar.
8 dk
Diziler
Çok veriyi tek kutuda tutmak, gezmek, aramak.
33 dk
4.1
Dizi: numaralı kutular
30 öğrencinin notu için 30 değişken değil, 30 gözlü tek dizi.
7 dk
4.2
Doğrusal arama
Aranan var mı, nerede? Baştan sona bak, bulunca dur.
7 dk
4.3
İkili arama
Sıralı listede ortadan böl: 1000 elemanda en fazla 10 adım.
9 dk
4.4
Sıralama: kabarcık ve seçmeli
Komşuları karşılaştırıp yer değiştir; ya da her turda en küçüğü seçip öne al.
10 dk
Klasik Algoritmalar
Her programcının cebinde taşıdığı çözümler.
30 dk
5.1
Asal sayı testi
Bir sayının 1 ve kendisinden başka böleni var mı? Kareköküne kadar bakmak yeter.
7 dk
5.2
EBOB: Öklid algoritması
İki bin yıllık algoritma: büyüğü küçüğe böl, kalanla devam et.
8 dk
5.3
Fibonacci ve tekrarlı ilişkiler
Her terim önceki ikisinin toplamı: 0 1 1 2 3 5 8 13…
7 dk
5.4
İkilik tabana çevirme
2'ye böl, kalanları tersten oku: 13 → 1101.
8 dk
Problem Çözme
Büyük problemi parçalamak, hata ayıklamak, adım saymak.
24 dk
6.1
Parçalara ayırma ve metotlar
Büyük problemi küçük, adı olan parçalara böl; her parçayı ayrı çöz, ayrı test et.
8 dk
6.2
Hata ayıklama alışkanlıkları
Program yanlış çalışıyor. Rastgele değiştirme; izle, daralt, doğrula.
7 dk
6.3
Adım saymak: algoritma ne kadar hızlı?
Doğrusal, karesel, logaritmik: girdi büyüyünce adım sayısı nasıl büyür?
9 dk