Dersin amacı mühendislik problemlerinde gereksinim duyulabilecek bilgisayar programlama yöntemlerinin uygulamalı olarak değerlendirilmesidir.
Dersin İçeriği
Bu ders; 1. Programlamanın temelleri,2. C programlamaya giriş,3. Değişkenler, anahtar kelimeler, yazım kuralları, operatörler,4. Hafıza İşaretçileri (Pointers),5. Kontrol yapıları,6. Döngüler,7. Fonksiyonlar,8. “Recursion”,9. Diziler,10. Karakter ve metin işlemleri,11. Hafıza yönetimi,12. “struct” ve “union” değişkeni, Bit operasyonları, Enumeration,13. Dosya işlemleri,14. İleri seviye veri yapıları; konularını içermektedir.
Dersin Öğrenme Kazanımları
Öğretim Yöntemleri
Ölçme Yöntemleri
Bilgisayar özkaynaklarına C programlama yaparak ulaşabilir ve verimli kullanılmasını sağlayabilir.
Bilgisayarda saklanabilecek veri türlerini tanımlayıp uygulamalarda kullanabilir.
Bilgisayara girdi ve çıktı sağlayarak etkileşim gerektiren programlama yaklaşımlarını gerçekleyebilir.
Kontrol gerektiren durumları programlayarak algoritmik çözümleri gerçekleyebilir.
Bilgisayar hafızasının direk olarak yönetilmesini gerektirecek programlama yaklaşımlarını uygulayabilir.
Bilgisayarda dosya açma dosyaya, veri yazma ve dosyadan veri silme işlemlerini örneklendirebilir.
İleri seviye veri yapıları konularında değerlendirme yapabilir.
12. “struct” ve “union” değişkeni, Bit operasyonları, Enumeration
13
13. Dosya işlemleri
14
14. İleri seviye veri yapıları
Kaynak
Slaytlar ve C kodları
C Programlamanın Temelleri, Prof. Dr. Timur Karaçay, Abaküs Yayınları
Dersin Program Yeterliliklerine Katkısı
Dersin Program Yeterliliklerine Katkısı
No
Program Yeterliliği
Katkı Düzeyi
1
2
3
4
5
1
Algoritma programlama, bilgisayar uygulaması geliştirme ve yazılım projelerinde kod geliştirme konularında yeterli altyapıya ve bunları iş hayatlarında kullanma yeteneğine sahiptir.
X
2
Programlama problemleri için bilinen çözüm yöntemlerini ve özel teknikleri kullanır ve uygular.
X
3
Yazılım uygulamaları için gerekli olan modern teknik ve araçları kullanır.
X
4
Bireysel olarak ve çok disiplinli takımlarda etkin olarak çalışır.
X
5
Geliştirilmiş uygulama veya yazılımın test aşamalarını gerçekler ve takip eder.
X
6
İşyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği, mesleki ve etik sorumluluk, programlama uygulamalarının hukuksal sonuçları konularında farkındalığa sahiptir.
X
7
Bilgiye erişir ve bu amaçla kaynak araştırması yapar.
X
8
Yaşam boyu öğrenmenin gerekliliği bilincindedir; bilim ve teknolojideki gelişmeleri izler ve kendini sürekli yeniler.
X
9
Sözlü ve yazılı, gerektiğinde teknik resimler ve modern araçlar kullanarak etkin iletişim kurar.
X
10
Yazılım çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkilerinin bilincinde olur; çağın sorunları çözmede ve toplumsal ilerlemede yeni yazılımlar geliştirir.
X
11
Geliştirdiği yazılımın temiz ve anlaşılır olmasına özen ve dikkat gösterir.
X
12
Kullanıcı odaklı tasarım ilkelerine riayet eder.
X
Değerlendirme Sistemi
Katkı Düzeyi
Mutlak Değerlendirme
Ara Sınavın Başarıya Oranı
40
Genel Sınavın Başarıya Oranı
60
Toplam
100
AKTS / İşyükü Tablosu
Etkinlik
Sayı
Süresi (Saat)
Toplam İş Yükü (Saat)
Ders Saati
14
4
56
Rehberli Problem Çözme
0
0
0
Problem Çözümü / Ödev / Proje / Rapor Tanzimi
5
20
100
Okul Dışı Diğer Faaliyetler
0
0
0
Proje Sunumu / Seminer
0
0
0
Kısa Sınav (QUİZ) ve Hazırlığı
3
3
9
Ara Sınav ve Hazırlığı
1
20
20
Genel Sınav ve Hazırlığı
1
30
30
Performans Görevi, Bakım Planı
0
0
0
Toplam İş Yükü (Saat)
215
Dersin AKTS Kredisi = Toplam İş Yükü (Saat)/30*=(215/30)
7
Dersin AKTS Kredisi: *30 saatlik çalışma 1 AKTS kredisi sayılmaktadır.
Dersin Detaylı Bilgileri
Ders Tanımı
Ders
Kodu
Yarıyıl
T+U Saat
Kredi
AKTS
C PROGRAMLAMA
-
Güz Dönemi
2+2
3
7
Ders Programı
Ön Koşul Dersleri
Önerilen Seçmeli Dersler
Dersin Dili
Türkçe
Dersin Seviyesi
Ön Lisans
Dersin Türü
Zorunlu
Dersin Koordinatörü
Dr.Öğr.Üye. Ali DEMİR
Dersi Verenler
Dr.Öğr.Üye. Ali DEMİR
Dersin Yardımcıları
Dersin Amacı
Dersin amacı mühendislik problemlerinde gereksinim duyulabilecek bilgisayar programlama yöntemlerinin uygulamalı olarak değerlendirilmesidir.
Dersin İçeriği
Bu ders; 1. Programlamanın temelleri,2. C programlamaya giriş,3. Değişkenler, anahtar kelimeler, yazım kuralları, operatörler,4. Hafıza İşaretçileri (Pointers),5. Kontrol yapıları,6. Döngüler,7. Fonksiyonlar,8. “Recursion”,9. Diziler,10. Karakter ve metin işlemleri,11. Hafıza yönetimi,12. “struct” ve “union” değişkeni, Bit operasyonları, Enumeration,13. Dosya işlemleri,14. İleri seviye veri yapıları; konularını içermektedir.
Dersin Öğrenme Kazanımları
Öğretim Yöntemleri
Ölçme Yöntemleri
Bilgisayar özkaynaklarına C programlama yaparak ulaşabilir ve verimli kullanılmasını sağlayabilir.
Bilgisayarda saklanabilecek veri türlerini tanımlayıp uygulamalarda kullanabilir.
Bilgisayara girdi ve çıktı sağlayarak etkileşim gerektiren programlama yaklaşımlarını gerçekleyebilir.
Kontrol gerektiren durumları programlayarak algoritmik çözümleri gerçekleyebilir.
Bilgisayar hafızasının direk olarak yönetilmesini gerektirecek programlama yaklaşımlarını uygulayabilir.
Bilgisayarda dosya açma dosyaya, veri yazma ve dosyadan veri silme işlemlerini örneklendirebilir.
İleri seviye veri yapıları konularında değerlendirme yapabilir.
12. “struct” ve “union” değişkeni, Bit operasyonları, Enumeration
13
13. Dosya işlemleri
14
14. İleri seviye veri yapıları
Kaynak
Slaytlar ve C kodları
C Programlamanın Temelleri, Prof. Dr. Timur Karaçay, Abaküs Yayınları
Dersin Program Yeterliliklerine Katkısı
Dersin Program Yeterliliklerine Katkısı
No
Program Yeterliliği
Katkı Düzeyi
1
2
3
4
5
1
Algoritma programlama, bilgisayar uygulaması geliştirme ve yazılım projelerinde kod geliştirme konularında yeterli altyapıya ve bunları iş hayatlarında kullanma yeteneğine sahiptir.
X
2
Programlama problemleri için bilinen çözüm yöntemlerini ve özel teknikleri kullanır ve uygular.
X
3
Yazılım uygulamaları için gerekli olan modern teknik ve araçları kullanır.
X
4
Bireysel olarak ve çok disiplinli takımlarda etkin olarak çalışır.
X
5
Geliştirilmiş uygulama veya yazılımın test aşamalarını gerçekler ve takip eder.
X
6
İşyeri uygulamaları, çalışanların sağlığı, çevre ve iş güvenliği, mesleki ve etik sorumluluk, programlama uygulamalarının hukuksal sonuçları konularında farkındalığa sahiptir.
X
7
Bilgiye erişir ve bu amaçla kaynak araştırması yapar.
X
8
Yaşam boyu öğrenmenin gerekliliği bilincindedir; bilim ve teknolojideki gelişmeleri izler ve kendini sürekli yeniler.
X
9
Sözlü ve yazılı, gerektiğinde teknik resimler ve modern araçlar kullanarak etkin iletişim kurar.
X
10
Yazılım çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkilerinin bilincinde olur; çağın sorunları çözmede ve toplumsal ilerlemede yeni yazılımlar geliştirir.
X
11
Geliştirdiği yazılımın temiz ve anlaşılır olmasına özen ve dikkat gösterir.