GERİ DÖN

Ders Öğretim Planı


Dersin Kodu Dersin Adı Dersin Türü Yıl Yarıyıl AKTS Kredi
EYON221 Yapısal Programlama Ders 2 3 5.00 3.00

Lisans


Türkçe


Öğrencilere algoritmik düşünme becerisi kazandırmak, yapısal programlamanın temel kavramlarını öğretmek, C dili ile düşük seviye programlama mantığını, Python dili ile güncel ve hızlı uygulama geliştirme becerilerini kazandırmak.


Dr. Öğr. Üyesi Gülsüm ŞANAL


1 Bilgisayar programlamada kullanılan temel terminolojiyi anlamak.
2 C tabanlı çalışan yazılımlarının alt yapısını kavrayabilme.
3 Değişken, veri tipi, koşul ve döngüleri kullanabilme
4 C Programlama dilinin temel komutlarını, fonksiyon ve dizi yapılarını, giriş-çıkış işlemlerini tanımlama ve kullanma
5 C dilinde program yazmak, derlemek ve hata ayıklamak.
6 Değerle çağırmak ve referansla çağırmak arasındaki farkı açıklamak.
7 Yapılar (struct) ve modüller ile programı modüler hale getirebilme

Birinci Öğretim


Yazılım Geliştirme Temelleri


GCC/Clang, VS Code + C/C++ uzantısı, (isteğe bağlı) Code::Blocks/CLion


- Temel programlama dillerinin ve özelliklerinin tanımlanması - Algoritmalar ve akış diyagramları - Temel giriş/çıkış işlemleri - Değişkenler, veri tipleri, operatörler - Karar yapıları ve döngüler - Fonksiyonlar, parametre aktarımı - Diziler ve string işlemleri - Arama ve sıralama algoritmaları - Dosya işlemleri - Yapılar (C) / Modüller (Python) - Hata ayıklama ve test - Küçük ölçekli proje geliştirme


Hafta Teorik [OgretimYontemVeTeknikleri] [OnHazirlik]
1 Yapısal programlamaya giriş (genel kavramlar)
2 C derleyici/ortam, programın yapısı, temel I/O Anlatım, Soru-Cevap, Uygulama-Lab GCC/VS Code kurulumu
3 Veri tipleri, ifadeler, operatörler Anlatım, Gösterim, Uygulama-Lab Operatör önceliği tablosu
4 Seçim yapıları (if/else, switch) Problem Çözme, Gösterim, Uygulama-Lab Karar tabloları
5 Döngüler (for/while/do-while), break/continue Uygulama-Lab, Mini-quiz Döngü örnekleri
6 Fonksiyonlar, prototip, değerle/gönderim Anlatım, Problem Çözme, Gösterim, Uygulama-Lab Fonksiyon parçalama egzersizi
7 Diziler (1D/2D), temel arama-sıralama Anlatım, Problem Çözme, Gösterim, Uygulama-Lab Doğrusal/ikili arama
8 Vize Sınavı
9 Karakter dizileri (string), <string.h> Uygulama, Gösterim, Problem çözme Metin işleme alıştırmaları
10 Gelişmiş fonksiyonlar, özyineleme (recursion) Anlatım, Problem Çözme, Gösterim, Uygulama-Lab Özyinelemeli örnek
11 Göstergeler (pointer) temelleri Gösterim, Uygulama-Lab Adres & işaretçi zihinsel modeli
12 Pointer + dizi/parametre ilişkisi Problem Çözme, Gösterim, Uygulama-Lab Dizi-fonksiyon örnekleri
13 Yapılar (struct), enum, typedef Gösterim, Uygulama-Lab Kayıt defteri tasarımı
14 Dosya işlemleri (fopen/fscanf/fprintf) Lab, Proje Çalışması CSV okuma-yazma
15 Final

• Brian W. Kernighan, Dennis M. Ritchie – The C Programming Language • K. N. King – C Programming: A Modern Approach • Al Sweigart – Automate the Boring Stuff with Python • Python Resmi Dokümantasyonu (https://docs.python.org) • Çeşitli ders notları ve çevrimiçi kaynaklar


• Quiz/Ödev (%10): Haftalık küçük alıştırmalar • Lab (%5): Kod çalışma, doğruluk, stil • Ara Sınav (%25): Algoritma + kısa kodlama • Proje (%40): Modülerlik, dosya işlemleri, rapor • Final (%20): Kapsamlı uygulama soruları


Yarıyıl (Yıl) İçi Etkinlikleri Adet Değer
Ara Sınav 1 100
Toplam 100
Yarıyıl (Yıl) Sonu Etkinlikleri Adet Değer
Final Sınavı 1 30
Rapor Sunma 1 35
Proje Sunma 1 35
Toplam 100
Yarıyıl (Yıl) İçi Etkinlikleri 40
Yarıyıl (Yıl) Sonu Etkinlikleri 60

YOK


Etkinlikler Sayısı Süresi (saat) Toplam İş Yükü (saat)
Ara Sınav 1 2 2
Final Sınavı 1 2 2
Derse Katılım 1 30 30
Ara Sınav İçin Bireysel Çalışma 1 25 25
Final Sınavı içiin Bireysel Çalışma 1 30 30
Performans 1 40 40
Toplam İş Yükü (saat) 129

PÇ 1 PÇ 2 PÇ 3 PÇ 4 PÇ 5 PÇ 6 PÇ 7 PÇ 8 PÇ 9 PÇ 10 PÇ 11 PÇ 12 PÇ 13 PÇ 14 PÇ 15
ÖÇ 1 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5
ÖÇ 2 1 2 2 3 4 4 4 4 5 5 5 5 5 5 5
ÖÇ 3 1 1 2 2 3 3 4 4 4 4 5 5 5 5 5
ÖÇ 4 1 1 1 2 2 2 3 3 3 4 4 5 5 5 5
ÖÇ 5 1 1 1 1 2 2 2 3 3 4 4 5 5 5 5
ÖÇ 6 1 1 1 1 1 2 2 2 3 3 4 5 5 5 5
ÖÇ 7 1 1 1 1 1 1 1 2 2 2 3 3 4 5 5
* Katkı Düzeyi : 1 Çok düşük 2 Düşük 3 Orta 4 Yüksek 5 Çok yüksek