Algoritma ve Programlama

Ders İçeriği
Algoritma ve Programlama Dersi Hakkında

1.Bölüm (Algoritma ve Programlamaya Giriş)

  1. Algoritma ve Problem Çözümü
  2. Problemi Kim Çözecek
  3. Problem Çözme Sırası
  4. Descartes'in Problem Çözme Bakış Açısı
  5. Algoritma Nedir?
  6. Algoritmaların Sahip Olması Gereken Genel Özellikler
  7. Algoritma Gösterim Şekilleri
  8. Mantıksal Yapılar
  9. İşlemler ve Operatörler
  10. Algoritmada Kullanılan Terimler
  11. Tahtaya Adını Yazma Algoritması
  12. İki Sayının Toplamı Algoritması
  13. Üçgenin Alanını Hesaplayan Algoritma 
  14. 1-5 arasındaki sayıların ekrana yazdırılması
  15. 1-10 Arasındaki Tek Sayıların Toplamı
  16. Ösym Akış Diyagramı

2.Bölüm (Programlamaya Giriş)

  1. Program Nedir?
  2. Programlama Nedir?
  3. IDE Nedir? (Integrated Development Environment – Tümleşik Geliştirme Ortamı)
  4. Yorumlayıcı (Interpreter) nedir?
  5. Bağlayıcı (Linker) ve Çalıştırma (Execute)
  6. Yazılım Hataları

3.Bölüm (C diline giriş)

  1. C Programlama Dilinin Tarihçesi 
  2. C Programlama Dili Tercih Nedeni
  3. C Dili Taşınabilirdir (Portable) !!!
  4. C Sistemleri ve Kütüphaneleri
  5. C Programlama Dili Kod Katman Yapısı 
  6. İlk C Programı
  7. C Programlama 2.Örnek
  8. C Kodlarının Temel Özellikleri - Özet
  9. Code::Blocks Nedir?
  10. Code::Blocks ile İlk C Programı
  11. C Programlama Dili Elemanları
  12. C'de Veri Türleri
  13. C'de Değişkenler
  14. C'de Sabitler
  15. C'de Operatörler
  16. printf () ve scanf()

4.Bölüm (Karşılaştırma ve Koşul Deyimleri)

  1. Koşul
  2. if…else Bloğu
  3. İç içe if…else Blokları (Nested If)
  4. Koşullarda Hızlı Değerlendirme
  5. if-else Kullanım Hataları
  6. switch…case Bloğu
  7. switch-case Kullanım Hataları
  8. if-else ve switch-case Kullanımlarının Karşılaştırması
  9. ? Karşılaştırma Operatörü
  10.  Girilen il plaka koduna göre ekrana ilgili şehir ismi yazdırılacaktır.
  11. ? Karşılaştırma Operatörü Örnek
  12. Çalışma Örnekleri 

  5.Bölüm (Döngüler)

  1. Döngü
  2. For Döngüsü
  3. While Döngüsü
  4. Do…while Döngüsü
  5. Break Deyimi
  6. Continue Deyimi
  7. İç İçe Geçmiş Döngüler
  8. Sonsuz Döngüler
  9.  Örnek-1: 1-10 arasındaki sayıların yazdırılması
  10. Örnek-2: Başlangıç bitiş değişkenleri arasındaki sayıların toplamı
  11. Örnek-3: Girilen bir sayının faktöriyel değerinin hesaplanması… 
  12. Örnek-4: 0 girilene kadar, girilmiş tüm sayıların toplanması...
  13. Örnek-5: 0 girilene kadar, girilmiş tüm sayıların toplanması...
  14. Örnek-6: 0 girilene kadar, girilen sayıların karelerini bulma…
  15. Örnek-7: 0 (break kullanarak)
  16. Örnek-8: 1-10 arası sayıları yazdır, (continue kullanarak)
  17. Örnek-9: 1-50 arasındaki asal sayıların yazdırılması

6.Bölüm (Diziler)

  1. Dizi Nedir?
  2. Dizilerin Bildirimi
  3. Dizilere Başlangıç Değeri Verme
  4. Dizi Kullanımlarında Dikkat Edilmesi Gereken En Önemli Nokta!
  5. Örnek-1: Dizi elemanlarına değer atama ve okuma
  6. Örnek-2: Dizi atamaları
  7. Örnek-3: Klavyeden sayısal değer girme
  8. Örnek-4: Dizi elemanı değeri kadar ekrana * karakteri yazdırma
  9. Doğrusal Arama
  10. Örnek-6: İkili Arama (Binary Search)
  11. Örnek-7: 3 Öğrenci Not Girişi ve Hesaplama

7.Bölüm (Karakter Dizileri)

  1. Karakter Dizileri (Strings)
  2. Karakter Dizilerinin Uzunluğu Bulmak
  3. Karakter Dizilerini Birleştirmek 
  4. Karakter Dizilerini Karşılaştırmak
  5. Örnek-1: Karakter Dizisi Okuma ve Yazma
  6. Örnek-2: Girilen Karakter Dizisinin Uzunluğunu Bulmak
  7. Örnek-3: Girilen Karakter Dizilerini Birleştirmek
  8. Örnek-4: Karakter Dizilerini Kopyalamak
  9. Örnek-5: Karakter Dizilerini Karşılaştırmak

8.Bölüm(Çok Boyutlu Diziler)

  1. Çok Boyutlu Dizi
  2. Çok boyutlu dizi örnekleri
  3. Örnek-1: Çok Boyutlu Dizi Bildirimi ve Dizi Elemanlarını Yazdırma 
  4. Örnek-2: Satranç Tahtası
  5. Örnek-3: Öğrenci Not Girişi ve Hesaplama
  6. İki Matrisin Çarpımı

9.Bölüm (Fonksiyonlar)

  1. Fonksiyonlar
  2. Fonksiyonlara Genel Bakış
  3. C ve Fonksiyonlar
  4. Fonksiyon Tanımı
  5. Parametre ve Argüman
  6. Fonksiyon Geri Dönüş Değerleri
  7. Fonksiyon Prototip Kullanımı
  8. void Fonksiyonlar
  9. Fonksiyon Kullanım Hataları
  10. Fonksiyonların Yinelemesi – Kendi Kendilerini Çağırması (Recursive Function)
  11. Yineleme mi Tekrar mı?
  12. Dizilerin Fonksiyonlarda Kullanılması
  13. Tavsiyeler
  14. Örnek-1: İki Sayının Toplamı
  15. Örnek-2: Fonksiyon Çağırımı ve Kod Akışı
  16. Örnek-3: İç içe birden fazla fonksiyon çağırımı
  17. Örnek-4: Fonksiyon geri değer dönüşü ve prototip kullanımı
  18. Örnek-5: void Fonksiyon Örneği
  19. Örnek-6: Yinelemeli Fonksiyon Kullanarak Yapılan Faktöriyel Hesabı
  20. Örnek-7: Dizinin Fonksiyonda Kullanılması

10.Bölüm (Esnek Argümanlı Fonksiyonlar)

  1. Esnek Argümanlı Fonksiyonlar ve main() Fonksiyonuna Parametre Aktarımı
  2. Örnek-1: n Tane Sayının Toplamı
  3. Örnek-2: n Tane Sayının En Küçüğünü Bulan Fonksiyon 


2.Bölüm-Lab Çalışmaları (Programlamaya Giriş)
 
  1. Akış diyagramları çalışma örnekleri
  2. Akış Diyagramı Çizim Programı

3.Bölüm-Lab Çalışmaları (C Diline Giriş)

  1. C program kodlarının yanlışlıklarını düzeltiniz.
  2. Aşağıdaki C programında bulunan özel amaçlı sözcükleri, tanıtıcı isimlerini ve değişkenleri işaretleyiniz. 
  3. C programının ekran çıktısı ne olur?
  4. Klavyeden girilen 2 gerçel sayının ...
  5. Klavyeden girilen iki sayının ortalamasını bulan bir C programı yazınız. Sonucu üç ondalıklı gösteriniz.
  6. Bir ücretlinin sicil numarası, ...
  7. 2850.0 değeri okunduğunda, aşağıdaki C programının çıktısı ne olur?
  8. Bir havuzun enini, boyunu ve yüksekliğini metre cinsinden girdi olarak alan ...


4.Bölüm-Lab Çalışmaları (Karşılaştırma ve Koşul Deyimleri)

  1. Bir üniversitede öğrencilerin başarı notunu harfe dönüştürmek üzere girilen başarı notu;
  2. Klavyeden girilecek bir tamsayının kontrolü yapılmak isteniyor. 
  3. Kullanıcının klavyeden 2 gerçel (float) sayı girilmesi istenecek 
  4. Girdiğiniz ay bilgisine göre hangi mevsimde olduğumuzu bulan bir program yazınız.
5.Bölüm Lab Çalışmaları (Döngüler)
  1. 1’den 25’e kadar olan sayıları ekrana yazdıran C programını yazınız.
  2. 7 şer sayı artışı programını C dili ile yazınız.
  3. Sayılar arasındaki toplamını ekrana yazan C programı
  4. Faktöriyel değerini hesaplayıp sonucu ekrana yazdıracak C programını yazınız
  5. Çift sayıların toplamını bulup ekrana yazdıracak C programını yazınız.
  6. Verilen verilen program parçalarının ekran çıktılarını bulunuz.
  7. Ekrana 41 defa «Maşallah» yazdıracak C programını
  8. N tamsayısı için bulup, sonucu ekrana yazdıracak C programını yazınız.
  9. Eşdeğer kodunu iç içe for döngüsü kullanarak yeniden yazınız.
  10. Sayı Piramit Şekli çıkartan C programını while döngüsü ile yapın.
  11. 1'den başlayıp kullanıcının girdiği sayıya kadar
  12. While döngüsü kullanarak bir C programı
6.Bölüm Lab Çalışmaları (Diziler)

  1. N tamsayısına kadar olan sayıları bir diziye yazan
  2. Diziden okuyan ve sayıların karelerini ekrana listeleyen
  3. "Tek", çift olanları "Cift" adlı bir diziye yazan ve bunları ayrı ayrı ekrana listeleyen
  4. Birbirinden farklı 10 adet pozitif tamsayı içerisinden en büyük olan sayıyı bulmaya yarayan
  5. Kullanıcı tarafından girilen N adet tamsayıyı küçükten büyüğe sıralayan 
  6. İki Diziden üçüncü dizi oluşturan

7.Bölüm Lab Çalışmaları (Karakter Dizileri)

  1. Soru-1: Girilen Cümleyi Tersten Yazdırma
  2. Soru-2: Girilen Cümlede Harf Arama ve Yerini Bulma
  3. Soru-3: Girilen Bir Cümlenin Kelimelerinin Baş Harflerini Büyük Harf Yapma

  8.Bölüm Lab Çalışmaları (Çok Boyutlu Diziler)


  1. A ve B matrislerinin değerlerini kullanıcı klavyeden girecektir.
  2. 2x2’lik bir matris tanımlayınız.

  9.Bölüm Lab Çalışmaları (Fonksiyonlar)


  1. İç İçe Toplam Seri Hesaplama 
  2. Bir Sayının Üssünü Hesaplayan C Programı
  3. İki Kelimeyi Birleştiren C Programı

  10.Bölüm Lab Çalışmaları (Esnek Argümanlı Fonksiyonlar)

  1. Örnek-1: Komut Satırından Girilen 2 Sayının Toplamı

Ek Örnekler

Temel Düzeyde Kodlama Öğrenme İle İlgili Araçlar
  1. HackerCan (Basit Kod Öğrenimi)
  2. Code.org (Akış Diyagramı Öğrenimi)
  3. Scratch (Akış Diyagramı ile Bilgisayar Oyunu)

Kaynaklar


  1. Kaynaklar