Programlamaya Giriş.

Slides:



Advertisements
Benzer bir sunumlar
Karmaşıklık Giriş.
Advertisements

Ayrık Yapılar Algoritma Analizi.
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Bilgisayar Programlama I
ALGORİTMA BULUNMASI
Algoritma ve Akış Diyagramları
Algoritma ve Akış Diyagramları
Problemi Çözme Adımları
Bilgi Teknolojisinin Temel Kavramları
TEMEL BİLGİSAYAR BİLİMLERİ
BPR151 ALGORİTMA VE PROGRAMLAMA - I
ALGORİTMA VE AKIŞ ŞEMALARI.
Algoritma ve Akış Diyagramları
ALGORİTMA ve PROGRAMLAMA
ALIŞTIRMALAR - 1 Sunu 1 ve Sunu 2 İçeriği
Nesneye Dayalı Programlama
Görsel C# ile Windows Programlama
Bilgisayar Programlama
Bilgisayar Programlama Güz 2011
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Algoritmalar (Algoritms)
AKIŞ ŞEMASI Akış şeması belirli bir işin yapılabilmesi için, basit işlemlerle şema halinde gösterilmesidir. Kısaca algoritmanın şemalarla gösterilmesidir.
Algoritmalar (Algoritms)
DENKLEMLER. DENKLEMLER ÜNİTE BAŞLIĞI X kimdir neye denir,neden gereksinim duyulmuştur.Bilinmeyeni denklem kurmada kullanırız.Bilinmeyen problemlerde.
Problem Yaklaşım Temelleri, Algoritma ve Akış Şeması
Programlama Dili nedir? Programlama Dili nedir?. Programlama Dili: Programcının bir bilgisayara ne yapmasını istedi ğ ini anlatmasının standartlaştırılmış.
KÜMELER İLE İŞLEMLER.
ALGORİTMA.
ENF 204 Bilgisayar Programlama Algoritma ve Akış Diyagramları
BİLGİSAYAR DESTEKLİ EĞİTİM UYGULAMALARI
Bilgi Teknolojisinin Temel Kavramları
Programlama Dilleri Visual Basic C# C++ Pascal Delphi.
Programlamaya Giriş 1. Verileri İşleyerek Özet bilgiler şekline sokabilen, bu veri ve bilgileri yüksek kapasitelerde saklayıp başka ortamlara iletebilen.
BİL 102 BİLGİSAYAR PROGRAMLAMA DERS 1. PROGRAM GELİŞTİRME AŞAMALARI 1- Probleme ilişkin veriler nelerdir? 2- Çözüm yöntemi nasıl olacaktır? 3- Çözüm sonucunda.
Bilgisayar Programcılığına ve Algoritmaya Giriş
ALGORİTMA VE AKIŞ ÇİZELGELERİ
Algoritma Mantığı ve Akış Diyagramları
ALGORİTMA NEDİR? İster bilgisayarda, ister matematikte, isterse günlük hayatta karşımıza çıkan her problemin çözüm yolu vardır. Örneğin yemek yerken farkında.
PROGRAMLAMA MANTIĞI, ALGORİTMA PROBLEM ÇÖZME
Bilgisayar Mühendisliğindeki Yeri
O R T L G İ M A A Ve Problem çözme.
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
ALGORİTMA VE PROGRAMLAMA 
O R T L G İ M A A Ve Akış şemaları.
PROGRAMLAMA TEMELLERİ Burak UZUN Bilişim Teknolojileri Öğretmeni Burak UZUN.
Algoritma ve Akış Şemaları
Bilgisayar Mühendisliği Bölümü
T.C. ÖMER HALİSDEMİR ÜNİVERSİTESİ EĞİTİM FAKÜLTESİ BİLGİSAYAR VE ÖĞRETİM TEKNOLOJİLERİ ÖĞRETMENLİĞİ EĞİTİMDE BİLİŞİM TEKNOLOJİLERİ – 2 DERSİ ALGORİTMALAR.
YAPAY ZEKA DERS NOTLARI UYGULAMALARI Bölüm 1 : Yapay Zeka
Bilgisayar ile Çeviri Sistemleri
ANKARA ÜNİVERSİTESİ SAĞLIK BİLİMLERİ FAKÜLTESİ SOSYAL HİZMET BÖLÜMÜ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
PROGRAMLAMA TEMELLERİ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
PROGRAMLAMA VE KODLAMAYA GİRİŞ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMALAR
DERS NOTLARI Ders Adı : Algoritma ve Programlamaya Giriş
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Problem Çözme Yaklaşımları
Algoritmanın Hazırlanması
PROGRAMLAMAYA GİRİŞ FORTRAN 77.
Algoritma Nedir? Algoritmayı, herhangi bir problemin çözümü için izlenecek yolun adımlar halinde yazılması olarak tanımlayabiliriz. Algoritma, bir problemin.
Bilgisayar Bilimi Problem Çözme Süreci-2.
Problemi Çözme Adımları
ALGORİTMALAR VE PROGRAMLAMAYA GİRİŞ
Problem Çözme ve Algoritmalar
Algoritma ve Akış Diyagramları
Sunum transkripti:

Programlamaya Giriş

Problem Çözme ve Algoritmalar Karşılığı bilimsel yöntemlerle bulunması gerekli soru ya da sorular kümesine problem diyoruz. Problem çözümünde bilgi, araştırma, tasarım yeteneği, sezgi ve düşünme gücünü bir yerde toplama gibi olgular yanında uygun Çözüm Yöntemini bulma, sonra onu verilen probleme uyarlama önem taşır. Problemi çözebilmek için öncelikle sorunun çok net biçimde programcı tarafından anlaşılmış olması gerekir. Tüm ihtiyaçlar ve istekler belirlenmelidir. Problemin çözümüne ilişkin zihinsel alıştırmalar yapılır. Bu alıştırmaların bilgisayar çözümüne yakın olması hedeflenir. Bir sorunun tabii ki birden fazla çözümü olabilir. Bu durumda bilgisayar için en uygun çözüm seçilmelidir. Çünkü bazen bizim için pratik olan çözümler bilgisayar için uygun olmayabilir. Oluşturulan çözüm Algoritma dediğimiz adımlarla ifade edilmelidir.

Programlama Dilleri Doğal dilde olduğu gibi programlama dilinin de bir alfabesi, sözcükleri, sözdizimi kuralları ve anlam yapısı vardır. Yapılan algoritma ve tasarımdan sonra yazılım aşamasına gelinir ve bu aşamada yapılan programın kullanım ömrü, programın kullanım düzeyi ve hangi amaçla kullanıldığı gibi soruların cevaplarına bakılarak programlama dili seçilir. Dil seçimi bazı kriterlere göre yapılmaktadır. Diller geliştirme kaynağının içeriğine göre; cebirsel, algoritmik, işletime, uygulamaya, makineye vb. yönelik olması ile çeşitlenir. Bir yazılım değişik dillerde oluşturulabilir fakat izlenen yöntemler genelde birbirine benzerdir.

Programlama Dilleri: Çok Yüksek Seviyeli Diller: Visual Basic, Acces, FoxPro,.. Yüksek Seviyeli Diller: Pascal, Basic, Fortran,.. Orta Seviyeli Diller: C, C++, ADA,... Düşük Seviyeli Diller: Assembly,.. Makine Dilleri: Bilgisayarın çalışma dilleri 1 ve 0 lardan oluşur.

Programlama dillerinin kendi alanları vardır ve her dil kendi alanında kullanıldığı sürece etkin ve başarılı olur. Örneğin kısa sürmesi ve görsel tasarım içermesi, veritabanı iletişimi yoğun kullanılması gereken bir program yapmamız gerekiyor olsun. Bu durumda Assembly dili ile yola çıktğımızda bahsedilen proje birkaç kişilik deneyimli bir programcı grubu ile bir kaç yıl alır. C ile iki programcı aynı işi üç dört ayda bitirirken Visual Basic ya da Delphi ile bir programcı bahsedilen işi bir iki ayda tamamlayabilir. Yaygın kullanılan üst düzey diller arasında Fen bilimleri ve Mühendislik alanlarında elverişli olanları Fortran, Pascal ve Basic olarak verilebilir. Sistem programcılığında ise C, C++ vd..

Sonuç olarak bir bilgisayar programı yazmak için belli aşamalar vardır ve bu aşamalar geçildiğinde kodlamaya başlanabilir Analiz Algoritma Dil Seçimi Kodlama Analiz ile gerçekleştirilmek istenen proje tasarımlanır ve parametreleri araştırılır. Algoritma ile adımlar tayin edilir. Dil seçimi ile en uygun programlama dili seçilir ve son olarak program kodlanmaya başlanır.

Algoritma Bir sorunu çözebilmek için gerekli olan sıralı mantıksal adımların tümüne Algoritma denir. Uluslararası Matematik sözlüğü (1960) Algoritma’yı; Cebirsel ya da sayısal çözümleme yöntemi Problem çözüm yöntemini, sırası belirli işlem adımları ile tanımlayan hesaplama kuralı Kesin ve açık tanımlanmış kurallar kümesi ya da problemin çözüm yönteminin sonlu işlem adımı ile tanımı olarak vermektedir.

Algoritmanın Özellikleri Doğal dille yazılabileceği için formal değildir. Algoritmanın uzunluğu kullanılan programlama dilinin seviyesi ve problemin karmaşıklığı ile doğru orantılıdır. Algoritma sonlu olmalıdır ve adımlar isimlendirilmelidir. İşlemler sade, net ve açıktır ( Farklı yorumlara izin vermeden kesin bir dille yazılmalıdır). Adımlar düzenli ve sıralı biçimde olmalıdır. Algoritmanın genel işleyisi gereği yapılacak işlemler algoritmanın adımları ile sıralı olarak gitmektedir. Problemin tam ve kesin tanımı yapılmalıdır. Girdi/çıktı kesin olarak tanımlanmalıdır. Örneğin, 2x2+10x-48=0 denkleminin pozitif kökü nedir sorusunda 2, 10, 48 katsayıları girdi, bulunacak kök çıktı ve koşul da kökün pozitif olmasıdır.

Problemin bilgisayarla çözümü düşünülüyorsa ilk yapılacak iş, çözüm yöntemini belirlemek ve onu bilgisayar algoritması yapısında yeniden tanımlamaktır. Algoritma yeterli koşulları sağlayan içerikte yazılmış ve doğruluğuna inanılmış ise, algoritma bilgisayar dili ile yeniden yazılır. Programlama dili ile yazılmış algortima ise programdır. Algoritma tasarımında, çözüm yaklaşımını parçalara ayırma ve her bir parçayı inceleme ve bütünleştirme çoğunlukla başvurulan bir yaklaşımdır. Örneğin n tane (n<=100) tane tamsayının en büyüğünü bulma probleminde çözüm algoritmasını hemen belirlemek kolay değildir. Bu nedenle ‘ iki sayının en büyüğünü bulmak’, ‘ üç sayının en büyüğünü bulmak’ gibi problemlerin çözüm yöntemlerini inceleyip genele varmak tasarımı kolaylaştıracaktır.

Algoritma Örnekleri Önce fiziksel olmayan bazı yalın problemler üzerinde çözüm algoritmalarını inceleyelim: Örn. 1) Öncelikle bir ev hanımının pasta yapmak istediğini varsayalım. bu pastanın yapımı için gerekli bir takım işlemler ve alt adımlar bellidir. Şöyle ki;

Pastanın yapımı için gerekli malzemeleri hazırla Yağı bir kaba koy Şekeri aynı kaba koy Yağ ve şekeri çırp Karışımın üzerine yumurtayı kır Tekrar çırp Karışıma un koy Karışıma vanilya, kabartma tozu ekle Karışım kıvama gelinceye kadar çırp Pastayı kek kalıbına koy Yeteri kadar ısınan fırına pastayı koy Pişmiş mi diye kontrol et 13. a. Pişmiş ise 16. adıma git b. Değilse 14. adıma git Keki fırından çıkart Fırını kapat kekin soğumasını bekle keki servis et

Daha önce de ifade edildiği gibi bir algortimada her adım son derece belirleyici olmalıdır. Algortimada herhangi bir belirsizlik sözkonusu olmamalıdır. Burada ise bazı belirsiz durumlar sözkonusudur; bir fırının yeterince ısınması hangi koşula bağlıdır, fırın kaç dereceye ayarlanmalıdır gibi.. Algoritmada bazı adımlar yer değiştirebilir. Ancak bir çok adımın kesinlikle yer değiştiremeyeceğini bilmeliyiz. Yanlış sıradaki adımlar algoritmanın yanlış çalışmasına ya da çalışamamamsına neden olacaktır. ( 2. ve 3. adım yer değiştirebilir ancak 11. ve 14. adımlar kesinlikle yer değiştiemezler).

Örn. 2) Bir kitabın 10. sayfasını bulun (Burada işleyicinin insan olduğu kitap ve belirlenen sayfa numarasının verildiği kabul edilmektedir.) Adım 1. kitabın ilk sayfasını aç. Adım 2. eğer açılan sayfa numarası 10 ise aranan sayfa bulunmuştur. Adım 3. değilse, bir sayfa çevirerek 2. adımı tekrarla

Örn. 3) Klavyeden girilen iki sayının toplamını yazdırma problemi için algoritma: Adım 1: Başla Adım 2: Girilen ilk sayıyı say1’ e ikinci sayıyı say2’ e ata. Adım 3: Top=say1+say2 Adım 4: Top değerini ekrana yaz Adım 5: Bitir.