MALTEPE ÜNİVERSİTESİ
MÜHENDİSLİK VE DOĞA BİLİMLERİ FAKÜLTESİ
BİLGİSAYAR MÜHENDİSLİĞİ
2014-2015 Güz Yarıyılı
Dersin adı: Algoritmalar ve Programlama I
AKTS Kredisi: 7
1.yıl - 1.yarıyıl
Lisans
4 s/hafta
Teorik:2 s/hafta Uygulamalı:2 s/hafta
Dersin kodu: BİL 133
Zorunlu
Dersin dili:Türkçe
Dersi Veren Öğretim Elemanının Adı ve Soyadı, İletişim bilgileri:
Öğr. Gör. Okan VARDARLI (Güz)
Mühendislik Binası Oda No: 209,e-posta:[email protected],dahili:2386
Ders Verdiği Şube(ler):
BİL 133 01, BİL 133 0101, BİL 133 02, BİL 133 0201, BİL 133 99
Görüşme Saatleri:
Pazartesi 11:00-12:00, Salı 10:00-12:00, Çarşamba 10:00-11:00,14:00-16:00, Perşembe 10:00-11:00,14:00-15:00,
Cuma 11:00-12:00,14:00-15:00
(Varsa) Dersin ya da öğretim elemanının web sayfasının adresi:
http://akademik.maltepe.edu.tr/~okanvardarli/
Dersin Genel Amacı:
Dersin iki temel hedefi vardır: öğrencinin bilgisayar programlamayı C programlama dilini kullanarak öğrenmesini ve
program çözümleri tasarımlanırken problem çözüm yöntemleri ve yazılım mühendisliği metotlarının izlenmesinin önemini
anlamasını sağlamaktır. Derste, öğrenciler, işlemsel (procedural) programlama, veri tipleri, kontrol yapıları, fonksiyonlar, veri
yazdırma biçimleri gibi ilkelerle tanışacaktır. Diğer konu başlıkları arasında diziler, pointer kavramı ve modüler programlama
bulunmaktadır. Algoritma tasarım ve geliştirme, akış diyagramları ve sözde kod (pseudo-code) teknikleri ile
gerçekleştirilecektir.
Planlanan Öğrenme Çıktıları ve Alt Beceriler:
Bu dersin sonunda öğrencilerin şu konularda yetkin olmaları beklenmektedir:
1. Öğrenciler bilgisayar donanımı, yazılımının ne olduğunu tanımlayabilecek ve Yazılım Geliştirme Yöntemini anlayıp
uygulayabilecektir.
2. Öğrenciler problemleri bilgisayar programları yazarak çözmeye başlamadan önce problem çözüm stratejileri
(algoritmaları) oluşturabilecektir.
3. Öğrenciler algoritmaları sözde kod ve akış diyagramları ile temsil edebilecektir.
4. Öğrenciler C programlama dilinin faklı programlama yapı taşlarını (sıralı, seçim, döngü ifadeleri) listeleyip,
kullanabilecektir.
5. Öğrenciler etkileşimli modda programları çalıştırabilecektir.
6. Öğrenciler bilgisayar programlarını analiz edebilecek, tasarımlayabilecek, belgelendirebilecek ve test edebilecektir.
7. Öğrenciler matematiksel problemlere bilgisayar program çözümleri oluşturabilmek için temel matematik bilgilerini
kullanabilecektir.
8. Öğrenciler farklı veri tiplerini (tam sayı, kayan-nokta, karakter, dizi, adres gösterici) ayırt edebilecektir.
9. Öğrenciler bilgisayar programlarını Tümleşik Geliştirme Araçları (derleyici içeren) kullanarak çalıştırabilecektir.
10. Öğrenciler bir bilgisayar programında hataları bulup ayıklayabilecek ve ortaya doğru çalışan yazılımlar çıkarabilecektir.
Genel Yeterlilikler:
1. Öğrenme ve anlama (temel program yapılarının, arama ve sıraya sokma algoritmalarının, tipik bir C dili benzeri program
ortamının öğrenilmesi ve anlaşılması).
2. Bilişsel/zihinsel beceriler (düşünme ve analiz etme, herhangi bir problemi anlayıp analiz edebilme ve çözümünü
bulabilme, algoritma geliştirebilme).
3. İletişim becerileri (takım çalışmaları yürütebilme).
4. Pratik ve konuya özel beceriler (arama ve sıralama algoritmaları dahil, C benzeri diller kullanarak program yazabilme,
bilgisayar programları yazarak matematiksel problemlere çözüm bulabilme).
Öğretim Yöntem ve Teknikleri:
Anlatım, soru-yanıt, uygulama gösterme, laboratuar uygulamaları.
Dersin veriliş şekli:
Yüz yüze
12.09.2014 16:22:08
MÜBİS
Sayfa: 1/3
Varsa, Uygulamanın (staj) yapıldığı yer:
Yok.
Önkoşul:
Yok.
Eş dönemli koşul:
Yok.
Önerilen ilave dersler:
Yok.
Dersin içeriği:
Yazılım, donanım ve algoritma tanımları, algoritmanın özellikleri, algoritmanın yazım kuralları, akış şemaları, C dilinde temel
elemanlar, girdi/çıktı, kontrol yapısı, fonksiyonlar, basit veri tipleri,diziler ve işaretçiler.
Ders kategorisi:
1.
2.
3.
4.
5.
Temel Meslek Dersleri
Uzmanlık/alan Dersleri
Destek Dersleri
Aktarılabilir Beceri Dersleri
Beşeri, İletişim ve Yönetim Becerileri Dersleri
X
Ders Kitabı:
1. Hanly J. R., Koffman E. B., 4- Mart-2012, "Problem Solving and Program Design in C", 7. baskı, Pearson, ISBN-10:
0132936496 ISBN-13: 978-0132936491.
Yardımcı Okumalar:
1. Deitel P., Deitel H., 4-Mart-2012, "C How to Program", 7. baskı, Prentice Hall, ISBN: 0132404168.
2. Çağıltay N.E., Selbes C.F., Tokdemir G., Turhan Ç., Şubat 2013, "C Dersi Programlamaya Giriş", 5. Baskı. Seçkin
Yayıncılık, ISBN-13: 978-1-11-116150-7.
3. Çağıltay N.E., Selbes C.F., Tokdemir G., Turhan Ç., Ocak 2012, "C Dersi Çözümlü Problem Kitabı". 3. Baskı. Seçkin
Yayıncılık, ISBN-13: 978-1-11-114140-0.
Haftalık ders konuları:
Haftalar İşlenecek Konular/Yapılacak Faaliyetler
1 . Hafta Bilgisayar ve Programlamaya Genel Bakış (Programlamanın tarihçesi, bilgisayar donanım ve yazılımına giriş,
program geliştirme metodolojisine giriş)
2 . Hafta Problem çözme ve algoritma kavramına giriş (sorunun analiz edilmesi, bir çözüm tasarımı, tasarımın
uygulanması, test etme, bakım, algoritmik problem çözmenin temellerine giriş)
3 . Hafta Algoritmalar (biçimsel bir algoritma tanımı, algoritma gösterimi, sözde kod, akış şemaları)
4 . Hafta C Programlama Diline Genel Bakış (bir C programının genel formu, dil elemanları, değişken bildirimleri ve veri
türleri, aritmetik ifadeler ve öncelik kuralları, program çıktısında sayıları biçimlendirme)
5 . Hafta Basit Veri Tipleri (tamsayı ve karakter değişkenleri ve ifadeler, kayan noktalı sayılar ve değişkenler, tamsayı ve
kayan noktalı sayılar arasındaki fark, double türü, tip dönüşümü(type casting))
6 . Hafta Seçme yapıları (kontrol yapıları, koşullar, if cümlesi ve bileşik ifadeler, algoritmalardaki karar adımları)
7 . Hafta Seçme yapıları (iç içe if cümleleri ve birden fazla alternatif seçim kararları, switch cümlesi)
8 . Hafta Tekrar ve döngü yapıları (programlarda döngü yapıları, sayılı döngüler ve for döngüsü, koşullu döngüler ve while
döngüsü)
9 . Hafta Tekrar ve döngü yapıları (do-while döngüsü, özel/bayrak değerle kontrollü döngüler, döngü tasarımı, iç içe
döngüler)
10. Hafta Diziler (dizileri tanımlama ve referans etme, dizi indisleri, sıralı erişim için for döngüsü kullanımı)
11. Hafta Diziler (çok boyutlu diziler)
12. Hafta Fonksiyonlarla tasarım (parametresiz fonksiyonlar) ve kütüphane işlevleri
13. Hafta Fonksiyonlarla programlama (basit I/O parametreli fonksiyonlar), değişkenlerin kapsam alanı
14. Hafta İşaretçi kavramına giriş (değer gönderme, adres gönderme, dizilerin fonksiyon argümanı olarak kullanımı)
15. Hafta Final Sınavı
16. Hafta Final Sınavı
Maltepe Üniversitesinde ara sınavlar, öğretim elemanının belirlediği bir haftada yapılır. Ara sınav, yukarıdaki tabloda
gösterilen 16 haftaya ek olarak, o ders için belirlenen bir haftada yapılır.
12.09.2014 16:22:08
MÜBİS
Sayfa: 2/3
Değerlendirme Sistemi
Yarıyıl içi Çalışmaları
Sayısı
Katkı Payı
Devam
Laboratuvar
Uygulama
Alan Çalışması
Derse Özgü Staj (Varsa)
Ödev
Sunum
Projeler
Seminer
Kısa sınav (Quiz)
Dinleme
Ara Sınavlar
Final
14
2
1
60 (%)
40 (%)
Toplam
AKTS (Öğrenici İş Yükü Tablosu)
Etkinlikler
100
Sayısı Süresi (Saat)
Ders Süresi (Ara sınavlar dahildir)
Laboratuvar
Uygulama
Derse Özgü Staj
Alan Çalışması
Sınıf Dışı Ders çalışma Süresi (Ön çalışma, pekiştirme)
Sunum/Seminer Hazırlama
Proje
Ödevler
Kısa Süreli Sınav
Dinleme
Ara sınavlar
Yarıyıl Sonu Sınavı
14
14
14
2
1
İş Yükü
2
2
5
14
21
28
28
70
28
21
Toplam İş Yükü 175
Dersin Öğrenim Çıktılarının BİLGİSAYAR MÜHENDİSLİĞİ Programı Yeterlilikleri İle İlişkisi
Katkı Düzeyi
No Program Yeterlikleri/Çıktıları
1 2 3 4 5
1 Bilgisayar mühendisliği problemlerinin çözümünde matematik, fen ve mühendislik bilgilerini uygular.
X
2 Bilgisayar Mühendisliği alanında karşılaşılabilecek sorunları tanımlar, uygun çözümleme ve
X
modelleme yöntemlerini kullanır ve çözer.
3 İhtiyaç duyulan gereksinimleri karşılayabilecek Bilgisayar Mühendisliği problemlerini tasarlar ve
çözümleyebilme becerisine sahiptir.
4 Bilgisayar Mühendisliği araç ve yazılımlarını etkin şekilde kullanır.
5 Veri toplama, sonuçları analiz etme, yorumlama ve paylaşabilme becerisine sahiptir.
6 Teknolojik yenilikleri izleme yeteneği ve yaşam boyu öğrenme bilincindedir
7 Takım çalışmasında ve disiplinlerarası çalışma gruplarında etkin görev alır ve liderlik edebilir
8 Sözlü ve yazılı etkin iletişim kurar
9 Alanı ile ilgili konularda dış kaynaklı yayınları takip eder ve kullanır.
10 Mesleki ve etik sorumlulukların bilincindedir.
11 İş hayatındaki uygulamalara yönelik farkındalık sahibidir.
12 Mühendislik uygulamalarının ulusal ve evrensel düzeydeki, hukuksal, toplumsal, kültürel ve çevresel
etkilerini kavrar.
12.09.2014 16:22:08
MÜBİS
X
X
X
X
X
X
X
X
X
X
Sayfa: 3/3
Download

MALTEPE ÜNİVERSİTESİ MÜHENDİSLİK VE DOĞA BİLİMLERİ