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.

Slides:



Advertisements
Benzer bir sunumlar
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Advertisements

Bilgisayar Programlama I
Algoritma ve Akış Diyagramları
Problemi Çözme Adımları
MATLAB’İN SAYI YUVARLAMA FONKSİYONLARI
AKIŞ DİYAGRAMLARI Yard.Doç.Dr. Cihad DEMİRLİ
MIT503 Veri Yapıları ve algoritmalar Algoritmalara giriş
BPR151 ALGORİTMA VE PROGRAMLAMA - I
BPR151 ALGORİTMA VE PROGRAMLAMA - I
ALGORİTMA VE AKIŞ ŞEMALARI.
Algoritma ve Akış Diyagramları
ALGORİTMA ve PROGRAMLAMA
AKIŞ ŞEMALARI 2.DERS.
Görsel C# ile Windows Programlama
SÖZDE –KODLAR (pseudo-code)
Bilgisayar Programlama
BPR152 ALGORİTMA VE PROGRAMLAMA - II
Bilgisayar Programlama Güz 2011
BPR151 ALGORİTMA VE PROGRAMLAMA - I
Algoritmalar (Algoritms)
Temel tanımlar ve işleyiş
Algoritmalar (Algoritms)
ALGORİTMA VE AKIŞ ŞEMASI
Problem Yaklaşım Temelleri, Algoritma ve Akış Şeması
BM-103 Programlamaya Giriş Güz 2014 (4. Sunu)
ALGORİTMA.
ENF 204 Bilgisayar Programlama Algoritma ve Akış Diyagramları
TEK Mİ ÇİFT Mİ? TOPLA YA DA ÇIKAR.
Problem Yaklaşım Temelleri, Algoritma ve Akış Şeması
Celal Bayar Üniversitesi Hasan Ferdi Turgutlu Teknoloji Fakültesi
Algoritmalar ve Programlama I Ders 2: Akış Diyagramları
Bugünkü Konular Döngüler ve Akış Diyagramları C de Döngü Tanımlama
ALGORİTMA VE AKIŞ ÇİZELGELERİ
Algoritma Mantığı ve Akış Diyagramları
Döngü Komutları. for deyimi bir alt limitten, bir üst limite kadar programın belirli bir parçasını tekrar eder. for deyiminde sayaç artış oranı da verilmelidir.
İnternet Programlama-I
Adım Adım Algoritma.
SAYISAL ANALİZ Doç.Dr. Cüneyt BAYILMIŞ.
Bilgisayar Programlama
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Bilgisayar Programlama Dersi KTÜ Harita Müh. Böl. 2015/2016Bahar Dönemi Doç. Dr. Oğuz Güngör Yrd. Doç. Dr. Emine Tanır Kayıkçı Yrd. Doç. Dr. Esra TUNÇ.
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
PROGRAMLAMA MANTIĞI, ALGORİTMA PROBLEM ÇÖZME
Akış Diyagramları - 1. Akış Diyagramı  Algoritmalar doğal dille yazıldıklarında herkes tarafından aynı biçimde anlaşılmayabilir.  Ancak, akış diyagramlarında.
BÖLÜM 3 AKIŞ DİYAGRAMI.
ALGORİTMA DERS 3 AKIŞ ŞEMALARI.
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
O R T L G İ M A A Ve Akış şemaları.
PROGRAMLAMA TEMELLERİ Burak UZUN Bilişim Teknolojileri Öğretmeni Burak UZUN.
İŞLEM KAVRAMI.
Algoritma ve Programlama
Algoritma ve Akış Şemaları
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.
ALGORİTMA VE AKIŞ ŞEMASI
ANKARA ÜNİVERSİTESİ SAĞLIK BİLİMLERİ FAKÜLTESİ SOSYAL HİZMET BÖLÜMÜ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
BM-103 Programlamaya Giriş Güz 2016 (5. Sunu)
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
BİLGİSAYAR PROGRAMLAMA Ders 5: Döngüler
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
PROGRAMLAMA VE KODLAMAYA GİRİŞ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
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.
Problemi Çözme Adımları
Akis diyagramı Örnekleri
Bilgisayar Bilimi Döngüler.
Algoritma ve Akış Diyagramları
Sunum transkripti:

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 olmadığımız fakat çözdüğümüz bir çok problem vardır. Ağzımızdan büyük olan bir ekmek parçasını ağzımıza götürmeden önce bölmemiz, büyük bir tabaktaki çorbayı rahat bir şekilde içmek için kaşık kullanmamız bir çözümdür.

ALGORİTMA NEDİR? Algoritma bir problemin çözümünde izlenecek yol anlamına gelir.  Genellikle programlama yapılmadan önce kullanılır ve tüm programlama dillerinin temeli algoritmaya dayanır.

ALGORİTMA HAZIRLANIRKEN NELERE DİKKAT ETMELİYİZ? Algoritmada çözüm tamamıyla ifade edilmelidir. Algoritma basit olmalıdır. Karışık olmamalıdır. Yapılmak istenenler belirgin ve açık olmalıdır. İşlemler yapılma sırasına göre baştan sona doğru sıralanmalıdır. İşlemler numaralandırılmalıdır.

Günlük Hayatta Algoritma Problem: Masa lambanızın elektrik düğmesini açtığınızda lambanın yanmadığını gördüğünüz zaman nasıl bir yol izlersiniz?

Günlük Hayatta Algoritma Çözüm: 1. Lamba çalışmıyor.  2. Lambanın fişi takılı değilse fişi tak  3. Takılıysa Ampül patlak mı kontrol et  4. Patlaksa değiştir.  5. Patlak değilse elektrik kesik mi kontrol et  6. Kesikse elektriğin gelmesini bekle  7. Kesik değilse lamba arızalıdır.

Günlük Hayatta Algoritma Problem: Bakkaldan bir cips satın aldınız ve cipsin tadının normal olmadığını fark ettiğinizde nasıl bir yol izlersiniz?

Programlamada Algoritma Algoritma Genellikle programlamada bir işi yapmak için tanımlanan, belli bir başlangıcı ve sonu olan, açıkça belirlenmiş basamaklardır. Programlama için algoritma yazmaya başlamadan önce bilmemiz gereken kavramlar var.

TANIMLAR Değişken nedir? Değişkeni dışarıdan bilgi almamızı sağlayan boş bir kutu olarak düşünebiliriz. İstediğimiz kadar değişken oluşturabiliriz. Her değişkene kendine özel bir isim veririz ve türünü belirtiriz. Örneğin; Sayi A, Metin B gibi, Algoritma içinde bilgi girişini dışarıdan almadan kendimizde verebiliriz. Değişkenin görevi aldığı bilgiyi saklaması ve istediğimiz zaman bize vermesidir. Örneğin; Veresiye satan bir bakkalın defteri bir değişken olarak düşünülebilir. Borç bilgilerini bu deftere yazması da dışarıdan bilgi alımı olarak düşünülebilir.

TANIMLAR Eğer sorgusu nedir? Eğer ifadesi tıpkı günlük hayatta kullandığımız gibidir. Örneğin; Eğer yağmur yağmıyorsa pikniğe gideceğim. Yağmıyorsa evde oturacağım.

TANIMLAR Döngü nedir? Döngü algoritmamızda defalarca kez çalışmasını istediğimiz adımların bir şarta bağlı olarak çalışma sürecine denir. Örneğin; Akşam yemeği için bir börek hazırladınız ve fırına koydunuz. Böreğin pişip pişmediğini anlamanız için belli aralıklarla kontrol etmeniz gerekiyor. Ta ki börek tam olarak pişene kadar. Bu örnekte böreği kontrol etme işleminiz birden fazla ve böreğin pişme şartına göre değiştiği için bir döngü uygulamaktasınız.

TANIMLAR Döngü nedir? Programlama Algoritmalarında ki kullanımı da tıpkı börek örneğine benzemektedir. Örneğin; 1-100 arasındaki sayılardan hangilerinin çift olduğunu bulmaya çalışmamız. İlk sayımızı birden başlatırız ve 2’ye bölünüp bölünmediğini sorarız.Eğer bölünüyorsa o sayıyı ekrana yazdırırız ve ilk sayımızı bir arttırırız. Yeni sayımız 100 den büyükse döngümüzü sonlandırırız. Yani Döngü oluşturmak için bir sayaca ve bir şarta ihtiyacımız vardı. Çünkü sayaç kaçıncı defa yaptığımızı şart ise kaç defa yapılması gerektiğini söyler.

TANIMLAR Döngü nedir?

TANIMLAR Girdi nedir? Değişkenleri konusunda dışarıdan bilgi aldığını gördük. İşte dışarıdan alınan bu bilgiye biz programlama algoritmalarında girdi diyoruz. Çıktı nedir? Döngü örneklerinden sayının çift olup olmadığını bulan döngüde sayı çiftse Ekrana yaz diye bir adım vardı. İşte bu örnekte ki gibi algoritmamız sonucunda ortaya çıkan ürüne çıktı denir.

ALGORİTMA NASIL YAZILIR? Kullanıcıdan alınan iki sayının toplamını ekrana yazdıran programın algoritması; Algoritmanın ilk adımı başla son adımı son kelimesidir. Çünkü Algoritma başlangıcı ve sonu belli olan bir yapıdır. Kullanıcıdan iki sayı aldığımız için bize iki adet dışarıdan bilgi alabileceğimiz değişken lazımdır. Bunları da A ve B olarak isimlendirdik. Toplam isminde bir değişkenimiz daha var bu değişkenin amacı ise A ve B sayılarının toplam bilgisini tutmak. 6.adımda ise çıktımız olan toplam değişkenini yazdırdık.

Algoritma örnekleri Örnek 1; Klavyeden girilen sayının pozitif, negatif, nötr olduğunu ekrana yazan programın algoritmasını yazınız. Bir sayının negatif mi pozitif mi nötr olduğunu anlamamız için 0 dan büyük mü küçük mü yoksa eşit mi durumlarını kontrol etmemiz gerekiyor. Bu kontrollerin sonucunda sayının ne olduğu bilgisini ekrana yazdırabiliriz Bunun için öğrenmiş olduğumuz eğer sorgusundan yardım alacağız

Algoritma örnekleri Çözümü; İlk önce A isminde bir değişken oluşturduk. Değişkeni oluşturduğumuz anda kullanıcıdan sayımızı da aldık. Daha sonra 3.adımda Eğer sorgusu kullanıp 0 dan büyük mü? Diye kontrol ettik. Büyükse çıktımızı yaz ve son adıma gidip bitir dedik. 4.Adımda aynı işlemi 0 dan küçük mü durumuna göre yaptık. Doğruysa eğer çıktımızı yazıp bitirmesini istedik. Ama eğer yanlışsa 0’a eşit mi diye sormadan nötr yazıp bitirmesini istedik. Çünkü bir sayı 0’dan büyük değil ve aynı zaman da küçük değilse o sayı zaten 0’dır. Algoritmada git yazıp istediğimiz aşamadan devam edebiliriz.

Algoritma örnekleri Örnek 2; Ekrana 100 defa Algoritma öğreniyorum yazan programın algoritmasını yazınız. Aynı şeyi defalarca kez 100 olma şartına göre yapıyoruz sizce de döngü ile yapılması gerekmiyor mu?

Algoritma örnekleri Çözümü; Sayac isminde bir değişken oluşturduk. Sayacımızın görevi her çıktı yazdırdığımızda kaçıncı çıktıyı yazdırdığımızı bilmemizi sağlar ve 100 çıktıdan fazla yazılmasını engeller. Her yazdırma işleminden sonra sayac bir arttırılır. Sayac arttırıldığında 100 den küçük ve eşitse döngü devam eder. Eğer değilse Algoritma sonlandırılır.

AKIŞ DİYAGRAMI NEDİR? Akış diyagramı algoritmanın görsel halidir. Bir çok sembolde oluşur ve her sembolün bir manası vardır. Bu sembollerin içine algoritma adımlarımızı yazarız Bütün semboller oklar ile birbirine bağlanır. Bütün bunların sonucunda Akış diyagramı dediğimiz Algoritmanın görsel hali ortaya çıkar.

AKIŞ DİYAGRAMI SEMBOLLERİ

Akış Diyagramı örnekleri Örnek 1; Klavyeden girilen sayının pozitif, negatif, nötr olduğunu ekrana yazan programın akış diyagramını çiziniz.

Algoritma örnekleri Çözümü; Sayı A A oku Başla Çözümde Her şey açık ve net bir şekilde görülmektedir. Eğer sorgusu için kullanılan sembolün Doğruysa kısmı E harfi Değilse kısmı H harfi ile gösterilmektedir. Paralel kenarla girdi işlemi yapılabildiği gibi çıktı işlemi de yapılabilir. A>0 E Pozitif yaz H A<0 E Negatif yaz H Nötr yaz Bitir

Akış Diyagramı örnekleri Örnek 2; Ekrana 100 defa Algoritma öğreniyorum yazan programın algoritmasını yazınız.

Algoritma öğreniyorum yaz Algoritma örnekleri Çözümü; Başla Sayı Sayac=1 Bu akış diyagramında Sayac ve Şart ile bir döngü oluşturduk. Şart sağlandığı sürece döngü çalışmaya devam eder Algoritma öğreniyorum yaz Sayac=sayac+1 sayac<=100 E H Bitir