Ana içeriğe atla
EN

ALGORİTMA VE PROGRAMLAMA

Ders
COMP223 - ALGORİTMA VE PROGRAMLAMA
Bölüm
Bilgisayar Programcılığı - İngilizce - Ön Lisans
Ders Tipi
Ders
Durum
Zorunlu
Dil
İngilizce
Kredi
4
AKTS
7
T+P+L
3 + 0 + 2
Ders Koordinatörleri
-
Ön Koşul
Anahtar Sözcükler

Ders Açıklaması

Ders içeriği genel olarak C ve C++ programlama dillerini kullanılarak algoritmaların uygulanmasını içermektedir. Temel algoritma konuları ve yapısal programlama teknikleri ilk olarak ele alınmaktadır. Diziler ve diziler üzerinde arama ve sıralama algoritmaları incelenmekte ve uygulanmaktadır. Veri yapılarının temelini oluşturan diziler ve yapılar, bit düzeyindeki işlemler ile birlikte öğretilmektedir. Ara sınavdan sonra ise dersin ikinci kısmı olarak işaretçiler, fonksiyonlar, dosya işleme ve karakter işlemleri incelenmekte ve bu işlemlere gereksinim duyan algoritmalar uygulanmktadır. Dersin konularına yönelik, özellikle diziler üzerinde arama ve sıralama algoritmalarına ihtiyaç duyan kısa çalışmalar pratik kısımda uygulanmaktadır. Son olarak geliştirilen algoritmaların veya programların karmaşıklık analizi için gerekli olan metodlar öğretilmektedir.

ALGORİTMA VE PROGRAMLAMA

Değerlendirme Araçları (Aktif Dönem)

Öğe Tür Ağırlık (%)
Final Exam Final 40
Midterm Exam Ara Sınav 30
Quiz Kısa Sınav 10
Homework Ödev 10
Lab Ödev 10
Toplam 100

Ders çıktıları

  1. 01 Learn and enhance basics of algorithms - pseudocodes and flowcharts.
  2. 02 Improve computer programming abilities with arrays, structures, pointers, strings.
  3. 03 Implement popular searching and sorting algorithms.
  4. 04 Learn how to program using structured data.
  5. 05 Develop computer programs including file processing.
  6. 06 Analyse the complexity of an algorithm and software implementation.

Ders Müfredatı

Hafta Konu
Hafta 1 Introduction to Algorithms
Hafta 2 Pseudocodes and Flowcharts
Hafta 3 Structured Program Development and Program Control
Hafta 4 Arrays, Sorting Algorithms on Arrays
Hafta 5 Searching Algorithms on Arrays
Hafta 6 Structures, Unions, Bit Manipulations and Enumerations
Hafta 7 Midterm Examination
Hafta 8 Midterm Examination
Hafta 9 File Processing
Hafta 10 Case Studies - Basic searching and sorting algorithms
Hafta 11 Dictionaries
Hafta 12 Characters and Strings
Hafta 13 Complexity Analysis of Algorithms
Hafta 14 Complexity Analysis of Algorithms
Hafta 15 Final Exam

Referans Kitaplar & Ders Materyalleri

  1. 01 John V. Guttag, Introduction to Computation and Programming Using Python, Third Edition, The MIT Press, 2021.
  2. 02 Thomas H. Cormen, Algorithms Unlocked, First Edition, The MIT Press, 2013.

Ders Çıktıları

  1. L01 Farklı algoritma türlerini tanımlamak. SOLO 3
  2. L02 Python'da sıralama algoritmalarını uygulamak. SOLO 4
  3. L03 Python'da sözlükler oluşturmak. SOLO 4
  4. L04 Python'da dize işlemleri gerçekleştirmek. SOLO 4
  5. L05 Python'da arama algoritmalarını uygulamak. SOLO 4
  6. L06 Python'da dosyalar oluşturmak. SOLO 4
  7. L07 Algoritma karmaşıklığını analiz etmek. SOLO 4

Program Çıktıları

  1. P01 Programlama bilgisini uygulayabilme
  2. P02 Değişen komplekslikte software sistem tasarımı
  3. P03 Bilgisayar sebepli problemleri belirleme, kategorize etme ve çözüm geliştirme
  4. P04 Bilgisayar programcılık projelerinde yöneterek sorumluluk alma
  5. P05 Bilgisayar teknolojileri alanında güncel konseptleri takip etmek
  6. P06 Gerçekci kısıtlamalara uygun olarak gerekli bilgisayar sistemlerini dizayn etme, uygulama ve değerlendirmek.
  7. P07 Bilgisayar kullanımı için gerekli olan teknik, beceri ve araçları kullanabilme
  8. P08 Kanıta dayalı karar vermeyi kolaylaştırmak için kurumsal ve çevresel verilerin toplanmasına ve analizine uygun teknolojiler ve teknikler uygulamak
  9. P09 Profesyonel ortamla geçerli olan etkili iletişim becerileri uygulamak
  10. P10 Profesyonel ortamla geçerli olan etkin işbirliği becerileri uygulamak

Pç-Dç Matrisi

ÖÇ P01 P02 P03 P04 P05 P06 P07 P08 P09 P10 Ortalama
L01 5 4 4 0 4 4 4 0 0 0 2.5
L02 5 5 5 0 4 5 5 0 0 0 2.9
L03 5 5 5 0 4 5 5 0 0 0 2.9
L04 5 4 4 0 4 4 4 0 0 0 2.5
L05 5 5 5 0 4 5 5 0 0 0 2.9
L06 5 5 5 0 4 5 5 0 0 0 2.9
L07 5 5 5 0 4 5 5 0 0 0 2.9