Ders İçerikleri ve Ön Koşulları

<< Ders İçerikleri ve Ön Koşulları

ES112 - Algoritmalar ve Bilgisayar Programlama

    DERS BİLGİLERİ

    Ders

    Kodu

    Yarıyıl

    T+U Saat

    Kredi

    AKTS

    ALGORITMA VE PROGRAMLAMA

    ES112

    1,2

    3 + 2

    4

    6

     

    Ön Koşul Dersleri

    Yok

     

    Dersin Dili

    İngilizce 

    Dersin Seviyesi

    Lisans

    Dersin Türü

    Zorunlu

    Dersin Koordinatörü


    Dersi Verenler


    Dersin Yardımcıları


    Dersin Amacı

    Dersin iki temel hedefi vardır: bilgisayar programlamayı C programlama dilini kullanarak öğretebilmek ve program çözümleri tasarımlanırken problem çözüm yöntemleri ve yazılım mühendisliği metodlarının izlenmesinin önemini vurgulamaktır. Derste, öğrenciler, işlemsel (procedural) programlama, veri tipleri, kontrol yapıları, fonksiyonlar, veri temsil biçimleri gibi ilkelerle tanışacaktır. Diğer konu başlıkları arasında, dosya erişim yöntemleri, diziler, karakter dizileri, pointer kavramı ve modüler programlama bulunmaktadır..

    Dersin İçeriği

    Bilgisayar ve programlamaya giriş, C’ye giriş, algoritma kavramı ve temsil biçimleri, C dilinin temel elemanları, denetim yapıları ve program tasarımı (ardıl deyimler, karar/seçim ve yineleme/döngü yapıları), diziler, fonksiyonlar, göstericiler, biçimlendirme, dosya giriş/çıkış, karakter katarları

     

    Course Learning Outcomes

    Program

    Learning Outcomes

    Teaching Methods

    Assessment Methods

    1) öğrenciler bilgisayar donanımı, yazılımının ne olduğunu tanımlıyabilecek ve belirliyebilecek ve Yazılım Geliştirme Yöntemini anlatıp uyguluyabilecektir

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

    2) öğrenciler problemleri bilgisayar programları yazarak çözmeye başlamadan önce problem çözüm stratejileri (algoritmaları) oluşturup hazırlayabilecektir

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

    3) öğrenciler C programlama dilinin faklı programlama yapı taşlarını (ardıl, seçim, döngü ifadeleri) listeleyip, kullanabilecektir

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

    4) öğrenciler bilgisayar programlarını analiz edebilecek, tasarımlayabilecek, belgelendirebilecek ve test edebilecektir

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

    5) öğrenciler etkileşimli ve yığınsal (batch) modda programları çalıştırabilecektir

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

    6) öğrenciler matematiksel problemler için bilgisayar program çözümleri oluşturabilmek için temel matematik bilgilerini kullanabilecektir

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

    7) öğrenciler farklı veri tiplerini (tam sayı, kayan-nokta, karakter, katar, dizi, adres gösterici) ayırd edebilecektir

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

    8) öğrenciler bilgisayar programlarını Tümleşik Geliştirme Ortamı (IDE) yazılım araçları kullanarak çalıştırabilecektir (editör, derleyici, linker, debugger)

    1,2,3,5,7,9,10

    1,2,3

    A,B,C

     

    Öğretim Yöntemleri:

    1: Anlatım, 2: Soru-Cevap, 3: Lab, 4: Örnek vaka incelemesi

    Ölçme Yöntemleri:

    A: Sınav , B: Deney, C: Ödev, D: Proje

     

    DERS İÇERİĞİ

    Hafta

    Konular

    Çalışma Malzemeleri

    1

    BİLGİSAYAR SİSTEMLERİNE GİRİŞ VE PROGRAMLAMA 

     

    2

    C PROGRAMLAMA DİLİNE GENEL BAKIŞ

     

    3

    PROBLEM ÇÖZÜMÜNE GİRİŞ VE ALGORİTMA KAVRAMI

     

    4

    KONTROL YAPILARI – ARDIŞIK DEYİMLER

     

    5

    KONTROL YAPILARI – SeÇME

     

    6

    KONTROL YAPILARI – İTERASYON

     

    7

    FONKSİYONLAR – HAZIR VE BASİT FONKSİYONLAR

     

    8

    FONKSİYONLAR – ÖZYİNELEMELİ FONKSİYONLAR, RASTGELE SAYI ÜRETİMİ

     

    9

    DİZİLER – 1B, 2B, ÇOK BOYUTLU DİZİLER

     

    10

    DİZİLER – ARAMA, SIRALAMA ALGORİTMALARI

     

    11

    PoInter YAPILARI – POINTER ARİTMETİĞİ, REFERANS İLE ÇAĞRIM

     

    12

    KARAKTER OPERASYONLARI VE FONKSİYONLARI

     

    13

    KARAKTER DİZİSİ OPERASYONLARI VE FONKSİYONLARI

     

    14

    DOSYA G/Ç (YAZI DOSYALARI, YENİDEN YÖNLENDİRME)

     

     

     

     

    KAYNAKLAR

    Ders Notu

    Jeri R. Hanly and Elliot B. Koffman (2012). Problem Solving and Program Design in C, Pearson Education, Inc., edition 7, ISBN: 978-0132936491 (DERS KITABI)

    Diğer Kaynaklar

    P.J. Deitel & H. M. Deitel (2013).C How to Program,7th Edition, Prentice-Hall., ISBN: 978-0132990448

     

    MATERYAL PAYLAŞIMI

    Dökümanlar

     

    Ödevler

     

    Sınavlar


     

    DEĞERLENDİRME SİSTEMİ

    YARIYIL İÇİ ÇALIŞMALARI

    SAYI

    KATKI YÜZDESİ

    Ara Sınav (Teorik )

    1

    25

    Lab-ara sınavı

    1

    20

    Laboratuvar  Çalışması

    14

    20

    Final sınavı

    1

    35

    Toplam


    100

    Finalin Başarıya Oranı


    35

    Yıl içinin Başarıya Oranı


    65

    Toplam


    100

     

    DERS KATEGORİSİ

    Uzmanlık / Alan Dersleri

     

     

    DERSİN PROGRAM ÇIKTILARINA KATKISI

    No

    Program Öğrenme Çıktıları

    Katkı Düzeyi

    1

    2

    3

    4

    5


    1

    Matematik, fen bilimleri ve Elektrik ve Elektronik Mühendisliği konularında yeterli altyapıya sahip olma; bu alanlardaki kuramsal ve uygulamalı bilgileri mühendislik çözümleri için beraber kullanabilme becerisi



    X




    2

    Elektrik ve Elektronik Mühendisliği problemlerini saptama, tanımlama, formüle etme ve çözme becerisi; bu amaçla uygun analitik yöntemler ve modelleme tekniklerini seçme ve uygulama becerisi,



    X




    3

    Bir sistemi, sistem bileşenini ya da süreci analiz etme ve istenen gereksinimleri karşılamak üzere gerçekçi kısıtlar altında tasarlama becerisi; bu doğrultuda modern tasarım yöntemlerini uygulama becerisi




    X



    4

    Elektrik ve Elektronik Mühendisliği uygulamaları için gerekli olan modern teknik ve araçları seçme ve kullanma becerisi; bilişim teknolojilerini etkin kullanma becerisi,







    5

    Deney tasarlama, deney yapma, veri toplama, sonuçları analiz etme ve yorumlama becerisi



    X




    6

    Bilgiye erişebilme ve bu amaçla kaynak araştırması yapabilme, veri tabanları ve diğer bilgi kaynaklarını kullanabilme becerisi,







    7

    Bireysel olarak ve çok disiplinli takımlarda etkin çalışabilme becerisi, sorumluluk alma özgüveni



    X




    8

    Türkçe sözlü ve yazılı etkin iletişim kurma becerisi; en az bir yabancı dil bilgisi,







    9

    Yasam boyu öğrenmenin gerekliliği bilinci; bilim ve teknolojideki gelişmeleri izleme ve kendini sürekli yenileme becerisi,




    X



    10

    Mesleki ve etik sorumluluk bilinci,



    x




    11

    Proje yönetimi, işyeri uygulamaları, çalışanların sağlığı, çevre ve is güvenliği konularında bilinç; mühendislik uygulamalarının hukuksal sonuçları hakkında farkındalık,







    12

    Mühendislik çözümlerinin ve uygulamalarının evrensel ve toplumsal boyutlardaki etkilerinin bilincinde olmak; girişimcilik ve yenilikçilik konularının farkında olmak ve çağın sorunları hakkında bilgi sahibi olmak.

     

     

     

     

     

     

     

     

     

     

    AKTS / İŞ YÜKÜ TABLOSU

    Etkinlik

    SAYISI

    Süresi
    (Saat)

    Toplam
    İş Yükü
    (Saat)

    Ders Süresi (Sınav haftası hariç, 12x toplam ders ve lab saati)

    14

    5

    70

    Sınıf Dışı Ders Çalışma Süresi (Ön çalışma, pekiştirme)

    14

    2

    28

    Ara Sınav (teorik & lab)

    2

    8

    16

    Ödev

    13

    2

    26

    Final

    1

    10

    10

    Toplam İş Yükü

     

     

    150

    Toplam İş Yükü / 25 (s)

     

     

    6

    Dersin AKTS Kredisi

     

     

    6

     

  • Syllabus
  • Ders İçeriği:

    Bilgisayar ve programlamaya giriş, C’ye giriş, algoritma kavramı ve temsil biçimleri, C dilinin temel elemanları, denetim yapıları ve program tasarımı (ardıl deyimler, karar/seçim ve yineleme/döngü yapıları), diziler, fonksiyonlar, göstericiler, biçimlendirme, dosya giriş/çıkış, karakter katarları