ALGORİTMA VE PROGRAMLAMA
- Ders
- ITEC223 - ALGORİTMA VE PROGRAMLAMA
- Bölüm
- Bilişim Teknolojileri - İngilizce - Lisans
- Ders Tipi
- Ders
- Durum
- Zorunlu
- Dil
- İngilizce
- Kredi
- 4
- AKTS
- 6
- 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ı
- 01 Learn and enhance basics of algorithms - pseudocodes and flowcharts.
- 02 Improve computer programming abilities with arrays, structures, pointers, strings.
- 03 Implement popular searching and sorting algorithms.
- 04 Learn how to program using structured data.
- 05 Develop computer programs including file processing.
- 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
- 01 John V. Guttag, Introduction to Computation and Programming Using Python, Third Edition, The MIT Press, 2021.
- 02 Thomas H. Cormen, Algorithms Unlocked, First Edition, The MIT Press, 2013.
Ders Çıktıları
- L01 Farklı algoritma türlerini açıklamak. SOLO 3
- L01 Python'da dosyalar oluşturmak. SOLO 4
- L01 Farklı algoritma türlerini açıklamak. SOLO 4
- L01 Farklı algoritma türlerini açıklamak. SOLO 3
- L02 Python'da sıralama algoritmalarını uygulamak. SOLO 4
- L02 Python'da sıralama algoritmalarını uygulamak. SOLO 4
- L02 Python'da sıralama algoritmalarını uygulamak. SOLO 4
- L03 Python'da sözlükler oluşturmak. SOLO 4
- L03 Python'da sözlükler oluşturmak. SOLO 4
- L03 Python'da sözlükler oluşturmak. SOLO 4
- L04 Python'da dize işlemleri gerçekleştirmek. SOLO 4
- L04 Python'da dize işlemleri gerçekleştirmek. SOLO 4
- L04 Python'da dize işlemleri gerçekleştirmek. SOLO 4
- L05 Python'da arama algoritmalarını uygulamak. SOLO 4
- L05 Python'da arama algoritmalarını uygulamak. SOLO 4
- L05 Python'da arama algoritmalarını uygulamak. SOLO 4
- L06 Python'da dosyalar oluşturmak. SOLO 4
- L06 Python'da dosyalar oluşturmak. SOLO 4
- L07 Algoritma karmaşıklığını analiz etmek. SOLO 4
- L07 Algoritma karmaşıklığını analiz etmek. SOLO 4
- L07 Algoritma karmaşıklığını analiz etmek. SOLO 4
Program Çıktıları
- P01 Kullanıcıların iş verilerine erişmesine izin vermek için çağdaş bir nesne yönelimli dilde bir kullanıcı arabirimi oluşturabilir
- P02 Kullanıcı ihtiyaçlarını tanımlayın ve analiz edin ve bilgi işlem tabanlı sistemlerin seçiminde, oluşturulmasında, entegrasyonunda, değerlendirilmesinde ve yönetiminde bunları dikkate alabilir
- P03 Ortak iş fonksiyonlarını analiz edebilir ve uygun bilgi teknolojisi çözümlerini belirleyebilir, tasarlayabilir ve geliştirebilir
- P04 Uygun problem çözme stratejilerini kullanarak çağdaş iş ortamları için yazılım çözümleri tasarlayabilir ve geliştirebilir
- P05 Çağdaş iş ortamlarını desteklemek için veritabanı sunucusunu yapılandırabilir ve yönetebilir
- P06 Küçük ila orta ölçekli bir şirket için ilişkisel bir veritabanını yönetebilir
- P07 BT tabanlı çözümleri kullanıcı ortamına etkin bir şekilde entegre edebilir
- P08 Profesyonel, etik, yasal, güvenlik ve sosyal konuları ve sorumlulukları anlayabilir
- P09 Profesyonel ortamla uyumlu etkili iletişim becerilerini uygulayabilir
- P10 Profesyonel ortamla uyumlu ekip çalışmasında etkili işbirliği becerilerini uygulayabilirler
Pç-Dç Matrisi
| ÖÇ | P01 | P02 | P03 | P04 | P05 | P06 | P07 | P08 | P09 | P10 | Ortalama |
|---|---|---|---|---|---|---|---|---|---|---|---|
| L01 | - | - | - | - | - | - | - | - | - | - | - |
| L01 | - | - | - | - | - | - | - | - | - | - | - |
| L01 | - | - | - | - | - | - | - | - | - | - | - |
| L01 | 3 | 3 | 3 | 4 | 0 | 0 | 3 | 0 | 0 | 0 | 1.6 |
| L02 | - | - | - | - | - | - | - | - | - | - | - |
| L02 | - | - | - | - | - | - | - | - | - | - | - |
| L02 | 4 | 4 | 0 | 5 | 0 | 0 | 4 | 0 | 0 | 0 | 1.7 |
| L03 | - | - | - | - | - | - | - | - | - | - | - |
| L03 | - | - | - | - | - | - | - | - | - | - | - |
| L03 | 4 | 4 | 0 | 5 | 0 | 0 | 4 | 0 | 0 | 0 | 1.7 |
| L04 | - | - | - | - | - | - | - | - | - | - | - |
| L04 | - | - | - | - | - | - | - | - | - | - | - |
| L04 | 3 | 3 | 0 | 4 | 0 | 0 | 3 | 0 | 0 | 0 | 1.3 |
| L05 | - | - | - | - | - | - | - | - | - | - | - |
| L05 | - | - | - | - | - | - | - | - | - | - | - |
| L05 | 4 | 4 | 0 | 5 | 0 | 0 | 4 | 0 | 0 | 0 | 1.7 |
| L06 | - | - | - | - | - | - | - | - | - | - | - |
| L06 | 4 | 4 | 0 | 5 | 0 | 0 | 4 | 0 | 0 | 0 | 1.7 |
| L07 | 3 | 4 | 3 | 5 | 0 | 0 | 4 | 0 | 0 | 0 | 1.9 |
| L07 | - | - | - | - | - | - | - | - | - | - | - |
| L07 | - | - | - | - | - | - | - | - | - | - | - |