folder Tahribat.com Forumları
linefolder Programlamaya Giriş
linefolder [Döküman] - Programlamanın Temelleri



[Döküman] - Programlamanın Temelleri

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    ★★★★
    Genki
    Genki's avatar
    Kayıt Tarihi: 24/Ağustos/2005
    Erkek

    Programlamanın Temelleri

    Merhaba arkadaşlar, bu makalemizde sizlere programlamanın temelleri , niçin programlama dillerine ihtiyacımız olduğunu, akış diagramlarını vs. vs. göstermeye/öğretmeye çalışacağım.

    Şimdi aklınızı pek karıştırmamak için olaya şöyle giriş yapabiliriz.

    Bilgisayarımıza  bir işlem yaptırmak istiyoruz diyelim. Bunu yapmak için bilgisayara bir şekilde bizim bunu anlatmamız gerekiyor. Biz insanlar arasında nasıl dil ile konusup anlaşabiliyorsak bilgisayar da bunu makine dili dediğimiz kavram ile anlamakta.

    Peki nedir bu makine dili ?

    Uzun uzadıya yazıp kafaları karıştırmaya gerek yok , kısaca 0 ve 1 gruplarından oluşan, bilgisayarın işlemcisinin bu 0 ve 1 lere göre programı yorumlayıp işlem yaptığı bir dildir diyebiliriz. Evet makine dilimiz sadece 0 ve 1 lerden oluştuğu için anlaması oldukça güçtür. Bir toplama işlemi yapmak istedigimizde 0101010100111110100101001010 gibi anlamlı bir kombinasyon ortaya çıkarmamız gerekmektedir.  Yazılan binlerce satırlık programlar olduğunu düşünürsek, bunları makine dilinde ortaya çıkarmamız neredeyse imkansızdır.

    İşte burda programlama dilleri ve derleyiciler devreye girmektedir.  Belli bir kurala göre yazılmış kodlarımızı, derleyiciler tarafından düzenleyip çalıştırdığımızda derleyiciğimiz yazmış olduğumuz kodları makine diline çevirmektedir.

    Neyin niçin gerekli olduğunu anladığımıza göre bir programın yazılış sürecini aşağıdaki şekilde göze almalıyız.

    1. Problemi(Sorunu) Tanımlama
    2. Problemi(Sorunu) Analiz Etme
    3. Algoritma oluşturma (Pseudocode(sözde kod) veya flowchart(akış diagramı) )
    4. Kodlama ve debugging

    Problemi Tanımlama

    Kısacası ne yapmak istediğimiz diyebiliriz. Misal ;

    “Elimizdeki bir listede bize verilmiş ismin kaç kere tekrarlandığını bul.”

    Şimdi programımızın yazılış sürecini bu yukardaki örnek üzerinden gösterelim. Problemi tanımladık sıra geledi analiz etmeye

    Problemi Analiz Etme

    Şimdi bize yukarda problem belirtilmiş. Elimizdeki bir listede bize verilen ismin kaç kere tekrarlandığını bulmamızı istiyor.

    Sorun : Elimizdeki bir listede bize verilen ismin kaç kere tekrarlandığını bul.

    Programa Girilmesi Gerekenler ( Input ) : İsim listesi, aranılacak isim

    Programın Vereceği Çıktı (Output ) : Aranılan ismin kaç kere tekrarlandığı

    Algoritma Oluşturma

    Evet arkadaşlar, problemi tanımladık, analiz ettik. Şimdi programı kodlamaya başlamadan önce, anlayacağımız bir şekidle programın işleyişini metne dökelim. Öncelikle bizden bir isim listesinde arama yapmamızı istediği için.

    1. İsim listesini al,
    2. İsim listesinde aranılacak kelimeyi al,
    3. Alınan ismi listenin en başından itibaren karşılaştırmaya başla,
    4. Yapılan karşılaştırmada eşleşen olursa , sayacımızı 1 arttır,
    5. Bütün liste baştan sonra arandıysa sonucu ekrana bas.

    Evet sözde kodumuzu bu şekilde oluşturabiliyoruz. Gördüğünüz gibi gayet basit.

    3.b Flowchart (akış diyagramı) oluşturma

    Yukardaki sözde kodumuzun akış diagramıda aşağıdaki gibidir.

    Şimdi flowchartımızdaki elips şekillerini, paralel kenarların, dikdörtgenlerin ne olduğunu açıklayalım.

    1.    Yukarıdaki resimde 2 tane elips şekli görüyoruz. Bir tanesi Başlat, diğeri Bitir diye.Demek ki “elips” şeklimiz akış diagramımızda başlangıç ve bitişi belirtmek için kullanılıyormuş.

    2.    İsim listesini al,Aranıcak ismi al,Sayacı göster bölümlerine baktığımızda “paralel kenar” içerisine alındığını görüyoruz. Demek ki paralel kenar,akış diyagramımızda veri girişi(input) ve sayacı göster bölümünde ki gibi çıktı(output) belirtmek için kullanılıyormuş.

    3.    Sayac=0 bölümünün ise dikdörtgen içerisinde yazıldığını görüyoruz. Yani akış diyagramımızda dikdörtgen nesnesi, hesaplama yaparken yada herhangi bir değişken tanımlarken kullanıyormuşuz.

    4.    Listede isim varmı bölümündeki şeklimizde ise, karşılaştırma veya kontrol işlemlerini belirtmişiz.

    Akış diyagramında birkaç tane daha nesne bulunmakta. İnternetten tamamına bakınıp detaylı bilgi edinebilirsiniz. Şimdilik işimiz bunlarla olduğu için bu kadar yeterli diyoruz.

    Son bölüm olan kodlama ve hata ayıklama bölümüne bir sonraki dökümanımızda C++ derslerimiz ile başlıyacağız.

    Bu doküman Tahribat.Com adına Genki tarafından yazılmıştır. Kaynak gösterilmeksizin dağıtılması, kopyalanıp sağa sola yapıştırılması yasaktır.

  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Holyzone
    Holyzone's avatar
    Üstün Hizmet Madalyası
    Kayıt Tarihi: 13/Ekim/2008
    Erkek

    Eline sağlık abi, büyük takipteyim :=)

  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Allura
    Allura's avatar
    Kayıt Tarihi: 17/Mayıs/2009
    Erkek

    Basit güzel anlatılmış yeni başlayanlara bir fikir verir.


    "
  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    frt
    frt's avatar
    Kayıt Tarihi: 19/Nisan/2008
    Erkek

    hocam devamı gelsin artık takipteyiz 


    son bitlisli
  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    calpazhan
    calpazhan's avatar
    Kayıt Tarihi: 05/Kasım/2009
    Erkek

    Takipteyim hocam ellerine sağlık


    Hayatım Beni Bile Güldüren Bir Oyuncak...
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Jilet_Boris
    Jilet_Boris's avatar
    Kayıt Tarihi: 04/Mart/2009
    Erkek

    Uzun zamandır aradığım şey bu işte, programlamayı en başından en sonuna kadar anlatırsan çok iyi olacak hocam :) devamı olsun yani

     

Toplam Hit: 1988 Toplam Mesaj: 6