Nevşehir Hacı Bektaş Veli Üniversitesi Bilgi Paketi

Programlar Hakkında Bilgi

MÜHENDİSLİK-MİMARLIK FAKÜLTESİ / BLM101 - BİLGİSAYAR MÜHENDİSLİĞİ

Kodu: BLM101 Adı: BİLGİSAYAR PROGRAMLAMA I Teorik+Uygulama: 3+1 AKTS: 6
Sınıf/Yarıyıl 1 / Güz
Ders Düzeyi Lisans
Ders Türü Zorunlu
Bölümü BİLGİSAYAR MÜHENDİSLİĞİ
Ön Koşul Dersleri Yok
Öğretim Sistemi Örgün
Ders Süresi 14 Hafta
Öğretim Elemanı SEMA ATASEVER (sema@nevsehir.edu.tr)
Diğer Öğretim
Elemanı/Elemanları
Öğretim Dili Türkçe
Sınıf Dışı Uygulama/Staj Yok
Dersin Amacı
Programlamanın temel kavramlarını ve mantığını güncel problemler üzerinden örneklendirerek programlama temelleri ile ilgili gerekli yeterlilikleri kazandırabilmek.

Ders Öğrenme Çıktıları (DÖÇ) ODY
Bu dersi başarı ile tamamlayan öğrenciler:
DÖÇ-1 Problemleri çözmek için basit algoritmalar tasarlar. PÇ-5 Genel mühendislik problemlerini tanımlama, modelleme, formüle etme ve çözme becerisi kazanır.
PÇ-7 Bilgisayar Mühendisliğine özgü problemleri saptama, tanımlama, formüle etme ve çözme becerisi kazanır.
PÇ-8 Yazılım ile ilgili temel kavramları kullanarak, program geliştirebilir.
PÇ-15 İstenenleri sağlayacak biçimde bir sistemi ya da süreci tasarlayabilir.
PÇ-16 Bireysel/grup içerisinde ya da disiplinler arası ekiplerle çalışabilme becerisi kazanır.
Performans Ödevi
DÖÇ-2 Kontrol deyimlerini kullanarak basit bir program geliştirebilir. PÇ-5 Genel mühendislik problemlerini tanımlama, modelleme, formüle etme ve çözme becerisi kazanır.
PÇ-7 Bilgisayar Mühendisliğine özgü problemleri saptama, tanımlama, formüle etme ve çözme becerisi kazanır.
PÇ-8 Yazılım ile ilgili temel kavramları kullanarak, program geliştirebilir.
PÇ-15 İstenenleri sağlayacak biçimde bir sistemi ya da süreci tasarlayabilir.
PÇ-16 Bireysel/grup içerisinde ya da disiplinler arası ekiplerle çalışabilme becerisi kazanır.
Performans Ödevi
DÖÇ-3 Dizilerle ilgili işlemler yapabilir. PÇ-5 Genel mühendislik problemlerini tanımlama, modelleme, formüle etme ve çözme becerisi kazanır.
PÇ-7 Bilgisayar Mühendisliğine özgü problemleri saptama, tanımlama, formüle etme ve çözme becerisi kazanır.
PÇ-8 Yazılım ile ilgili temel kavramları kullanarak, program geliştirebilir.
PÇ-15 İstenenleri sağlayacak biçimde bir sistemi ya da süreci tasarlayabilir.
PÇ-16 Bireysel/grup içerisinde ya da disiplinler arası ekiplerle çalışabilme becerisi kazanır.
Performans Ödevi
DÖÇ-4 Bilgisayar mühendisliği kavramları hakkında giriş seviyesinde bilgi sahibi olur. PÇ-7 Bilgisayar Mühendisliğine özgü problemleri saptama, tanımlama, formüle etme ve çözme becerisi kazanır.
PÇ-8 Yazılım ile ilgili temel kavramları kullanarak, program geliştirebilir.
PÇ-9 Temel bilgisayar donanımı, yazılımı ve sistem güvenliği hakkında bilgi ve beceri sahibi olur.
Performans Ödevi
DÖÇ-5 Bilgisayar programlamanın temel kavramlarını anlar. PÇ-7 Bilgisayar Mühendisliğine özgü problemleri saptama, tanımlama, formüle etme ve çözme becerisi kazanır.
PÇ-8 Yazılım ile ilgili temel kavramları kullanarak, program geliştirebilir.
Performans Ödevi
PÇ: Bölüm program çıktıları
ÖDY: Ölçme ve değerlendirme yöntemi

Dersin İçeriği
Bilgisayarla ilgili temel kavramlar, programlama diline giriş, Pseudo (Sözde) Kod, sayı sistemleri, yazılım, donanım, makine dili, yüksek seviyeli programlama dilleri, algoritma ve akış diyagramı kavramları, veri türleri, değişken kullanımı, derlenen ve yorumlanan programlama dilleri, birincil veri türleri, türetilmiş ve kullanıcı tanımlı veriler, değiştiriciler(modifiers), değişken kullanımı, yerel değişkenlerin kullanımı, döngüler (for), kullanıcı tanımlı fonksiyonlar, sayı sistemlerinin gösterimi, aritmetik operatörlerin kullanımı, switch kalıbı, operatörler (Atama, Arttırma, Azaltma ve sizeof), renkli kod yazımı, pointer kavramı, yapı kavramı (The concept of structures), üçlü operatör (Ternary Operator), özyinelemeli fonksiyonlar (Recursive Functions), kod gösterimi (Code Notation), işaretçiler (pointers), dinamik bellek tahsisi, bit operatörleri (AND, OR, XOR, sola kaydırma, sağa kaydırma, maskeleme), rastgele sayı üretimi (rand() ve srand() fonksiyonları kullanımı), dosya işlemleri (yazma, okuma, dosya kopyalama), iki boyutlu dizi değişkenler, standart giriş çıkış işlevleri.
Haftalık Detaylı Ders İçeriği
Hafta Detaylı İçerik Öğretim Yöntem ve Teknikleri
1 Bilgisayarla ilgili temel kavramlar, programlama diline giriş, Pseudo (Sözde) Kod, sayı sistemleri, yazılım, donanım, makine dili, yüksek seviyeli programlama dilleri. Anlatım, soru – cevap, problem çözme ve uygulama.
2 Algoritma ve akış diyagramı kavramları, veri türleri, değişken kullanımı, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
3 Derlenen ve yorumlanan programlama dilleri, case sensitive/case insensitive kavramı, birincil veri türleri, türetilmiş ve kullanıcı tanımlı veriler, değiştiriciler(modifiers), değişken kullanımı. Anlatım, soru – cevap, problem çözme ve uygulama.
4 Yerel değişkenlerin kullanımı, döngüler (for), kullanıcı tanımlı fonksiyonlar, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
5 Fonksiyon kullanımı, sayı sistemlerinin gösterimi, aritmetik operatörlerin kullanımı, switch kalıbı, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
6 Operatörler (Atama, Arttırma, Azaltma ve sizeof), Renkli kod yazımı, strlen fonksiyonu, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
7 Pointer kavramı, Yapı kavramı (The concept of structures), Üçlü operatör (Ternary Operator), örnek kodlar ile uygulama. Anlatım, soru – cevap, problem çözme ve uygulama.
8 Ara Sınav
9 Özyinelemeli Fonksiyonlar (Recursive Functions), örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
10 Kod Gösterimi (Code Notation), İşaretçiler (pointers), örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
11 Dinamik Bellek Tahsisi, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
12 Yapısal programlama, C dilinin özellikleri, Goto ve null ifadesi,Union veri türü, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
13 Bit operatörleri (AND, OR, XOR, Sola kaydırma, sağa kaydırma, maskeleme), C’deki operatör kullanımları-Özet, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
14 Rastgele sayı üretimi (rand() ve srand() fonksiyonları kullanımı), dosya işlemleri (yazma, okuma, dosya kopyalama), iki boyutlu dizi değişkenler, standart giriş çıkış işlevleri, örnek kod uygulamaları. Anlatım, soru – cevap, problem çözme ve uygulama.
15 Genel Tekrar Anlatım, soru – cevap, problem çözme ve uygulama.
16 Final Sınavı
Ders Kitabı / Yardımcı Kitap
1 Ders Notları: https://derslik.nevsehir.edu.tr
2 Stephen Kochan, Programming in C, Fourth Edition, Pearson Education, Inc., 2015.
3 C ile Programlama, Başlangıçtan İleri Seviyeye, Dr. Recep Sinan Arslan, Dr. Nuh Azgınoğlu, Dr. Murat Taşyürek, Nobel Yayınları, 2022.
Ders Araç - Gereç ve Malzemeleri
Bilgisayar, ders notları, yardımcı ders kitabı.

Ölçme Yöntemi
Yöntem Hafta Süre (Saat) Katkı(%)
Ara Sınav 8 1 40
Diğer Ölçme Yöntemleri
1.Sözlü Sınav
2.Kısa Sınav (Quiz)
3.Laboratuvar Sınavı
4.Sunum
5.Rapor
6.Seminer
7.Performans Ödevi
8.Dönem Ödevi
9.Proje
Final Sınavı 16 1 60

Öğrenci İş Yükü
İşlem Adı Haftalık Saat Sayı İş Yükü
Haftalık Ders Saati (Teorik+Uygulama) 4 14 56
Sınıf Dışı Çalışma
       a) Okuma 5 7 35
       b) İnternette/Kütüphanede Tarama 5 7 35
       c) Performans Ödevi 7 5 35
       d) Seminer/Sunum/Rapor Hazırlama 0
       e) Dönem Ödevi/Proje Hazırlama 0
Sözlü Sınav 0
Kısa Sınav (Quiz) 0
Laboratuvar Sınavı 0
Ara Sınav İçin Hazırlık 8 1 8
Ara Sınav 1 1 1
Final Sınavı İçin Hazırlık 9 1 9
Final Sınavı 1 1 1
0
0
Toplam İş Yükü 180