Algoritma ve Akış Şemaları

Benzer belgeler
BİLGİSAYAR PROGRAMLAMA. Algoritma ve Akış Şemaları

ÖRNEK 1: Verilen iki sayının toplamının bulunmasının algoritması aşağıdaki gibi yazılır:

Algoritmalar ve Programlama. Algoritma

BMT 101 Algoritma ve Programlama I 7. Hafta. Yük. Müh. Köksal Gündoğdu 1

C PROGRAMLAMA YRD.DOÇ.DR. BUKET DOĞAN PROGRAM - ALGORİTMA AKIŞ ŞEMASI

Programlama Temelleri. Ders notları. Öğr.Gör. Hüseyin Bilal MACİT 2017

BMT 101 Algoritma ve Programlama I 3. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

Algoritmanın Hazırlanması

Hafta 5 Algoritma Örnekleri ve Analizi

EM205 26/9/2014. Programlamaya giriş Algoritmalar. Amaçlar

BİL-142 Bilgisayar Programlama II

BİLGİSAYAR TEMELLERİ VE PROGRAMLAMAYA GİRİŞ

BİLGİSAYAR PROGRAMLAMA MATLAB

Örnek bir Algoritma. Örneğimiz bir insanın evden çıkıp işe giderken izleyeceği yolu ve işyerine girişinde ilk yapacaklarını tanımlamaktadır.

BLGM BÖLÜM. Problem Çözme Kavramları (Algoritma ve Akış Şemaları)

MATLAB de. Programlama. Kontrol Yapıları. Döngü Yapıları. Doç. Dr. İrfan KAYMAZ Matlab Ders Notları

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 5. Bölüm Karar ve Çevrim Kontrol Yapıları

PROGRAMLAMA DİLLERİ I

ALGORİTMA NEDİR? (Adım adım işlem basamaklarının yazılmasıdır.)

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Bil101 Bilgisayar Yazılımı I. M. Erdem ÇORAPÇIOĞLU Bilgisayar Yüksek Mühendisi

Döngüler - Loops 4/9/2010. ENF-102 Jeoloji Giriş. Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

HÜPP PYTHON I.HAFTA ALGORİTMA MANTIĞI, AKIŞ DİYAGRAMLARI VE PYTHON'A GİRİŞ

GÖRSEL PROGRALAMA HAFTA 3 ALGORİTMA VE AKIŞ DİYAGRAMLARI

ALGORİTMA KAVRAMI. Bir sorunu / problemi çözmek veya belirli bir amaca ulaşmak için gerekli olan sıralı mantıksal adımların tümüne algoritma denir.

Veri Yapıları ve Algoritmalar

Okut. Yüksel YURTAY. İletişim : (264) Sayısal Analiz. Algoritma & Matlab.

Çoktan Seçmeli Değerlendirme Soruları Akış Şemaları İle Algoritma Geliştirme Örnekleri Giriş 39 1.Gündelik Hayattan Algoritma Örnekleri 39 2.Say

Döngüler - Loops 4/13/2011. ENF-102 Jeoloji Sayaç kontrollü bir döngüdeki temel öğeler. Sayaç (counter) Kontrollü Döngüler.

PROGRAM AKIŞ DİYAGRAMLARI

Dr. Musa KILIÇ Öğretim Görevlisi

ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

Matris İşlemleri Uygulaması

PROGRAMLAMAYA GİRİŞ VE ALGORİTMA «YTÜROK» EĞİTMEN:REHA ÖZGÜR ŞİMŞEK

BMT 101 Algoritma ve Programlama I 8. Hafta. Yük. Müh. Köksal GÜNDOĞDU 1

Akış Kontrol Mekanizmaları

Program AkıĢ Kontrol Yapıları

ALGORİTMALAR. Turbo C Bilgisayarda Problem Çözme Adımları. Bilgisayarda Problem Çözme Adımları.

Algoritma ve Akış Diyagramları

Yukardaki gibi sonsuz döngülü programlara Ctrl+Break tuş takımı ile müdahale edilmesi gerekir, aksi halde program sonsuz döngüye girer.

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

PROGRAMLAMAYA GİRİŞ. Öğr. Gör. Ayhan KOÇ. Kaynak: Algoritma Geliştirme ve Programlamaya Giriş, Dr. Fahri VATANSEVER, Seçkin Yay.


Algoritma ve Programlama: Karar Yapıları ve Döngüler

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ (Algoritma Geliştirmek, Satır Kod)

JAVA DÖNGÜ DEYİMLERİ. For Döngüsü

BMT 101 Algoritma ve Programlama I 3. Hafta (Örnekler) Yük. Müh. Köksal GÜNDOĞDU 1

PROGRAMLAMAYA GİRİŞ DERS NOTLARI

Algoritmalar, Akış Şemaları ve O() Karmaşıklık Notasyonu

TEMEL BİLGİSAYAR BİLİMLERİ. Programcılık, problem çözme ve algoritma oluşturma

BLG 1306 Temel Bilgisayar Programlama

BÖLÜM 2: ALGORİTMALAR

BİL1002 Bilgisayar Programlama PROF.DR.TOLGA ELBİR

Bilgisayar Programı Nedir?

ALGORİTMA VE PROGRAMLAMA I

5- AKIŞ DİYAGRAMLARI (FLOW- CHART) M.İLKUÇAR - 1

Algoritma kelimesinin kökeni:

HSancak Nesne Tabanlı Programlama I Ders Notları

Koşul deyimleri: Koşul deyimleri döngülerle birlikte programcılıkta en çok kullanılan deyimlerdir. Matlab de kullanılan koşul deyimleri;

Bireylerin yaşadığı çevreye uyum sağlaması durumunda ortaya çıkan olumsuzluklara PROBLEM denir.

Program Akış Kontrol Yapıları

Algoritma ve Programlamaya Giriş

GÜMÜŞHANE ÜNĐVERSĐTESĐ MÜHENDĐSLĐK VE DOĞA BĐLĐMLERĐ FAKÜLTESĐ ELEKTRĐK-ELEKTRONĐK MÜHENDĐSLĐĞĐ EEM 114 ALGORĐTMA TASARIMI VE PROGRAMLAMA DĐLLERĐ

BMT 101 Algoritma ve Programlama I Güz Dönemi. Yük. Müh. Köksal Gündoğdu 1

Dersin Sorumlusu: Yrd. Doç. Dr. Birol SOYSAL. Sunumları Hazırlayan: Doç. Dr. Bülent ÇAKMAK

Bilgisayarda Programlama. Temel Kavramlar

Genel Programlama I

BİLİŞİM TEKNOLOJİLERİ 6. SINIF DERS NOTLARI 2

İÇERİK PROGRAMLAMAYA GİRİŞ ALGORİTMA AKIŞ DİYAGRAMLARI PROGRAMLAMA DİLLERİ JAVA DİLİNİN YAPISI JAVA DA KULLANILAN VERİ TİPLERİ JAVA DA PROGRAM YAZMA

AKIŞ ŞEMASI AKIŞ ŞEMASI AKIŞ ŞEMASI ŞEKİLLERİ GİRİŞ

BİLGİSAYAR PROGRAMLAMA DERSİ

Algoritma ve Akış Diyagramları

BÖLÜM 2 C PROGRAMLAMADA AKIŞ KONTROLÜ. GOTO: C programında programın herhangi bir yerinden bir yerine şartsız olarak atlanmasını sağlayan komuttur.

MAT213 Bilgisayar Programlama I

İçerik. Java da İşleçler, İşleçler. Aritmetik İşleçler - 1. Aritmetik İşleçler - 2. Geçen ders: Bu ders: BS-515 Nesneye Yönelik Programlama

Algoritma ve Akış Şemaları

Programlama Giriş. 17 Ekim 2015 Cumartesi Yrd. Doç. Dr. Mustafa YANARTAŞ 1

Algoritma ve Programlama I

WEB TASARIM I. Öğr. Gör. M. Mutlu YAPICI. Ankara Üniversitesi Elmadağ Meslek Yüksekokulu

ALGORİTMA VE PROGRAMLAMA I

Java da İşleçler, Ders #3 (4 Kasım 2009)

2 ALGORİTMA VE AKIŞ DİYAGRAMLARI

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

BM202 SAYISAL ÇÖZÜMLEME

Algoritma. 19. yüzyılda Persli matematikçi Al- Khowarizmi (Al-Harezmi) tarafından bulunmuş ve onun adında türetilmiştir.

disp VEYA fprintf KOMUTLARIYLA EKRANA MESAJ YAZDIRMA

Yazılım Mühendisliği 1

BÖLÜM 6: KARŞILAŞTIRMALI KONTROL YAPILARI

Belirli bir iş bir çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü deyimleriyle istenildiği kadar tekrar tekrar çalıştırılabilir.

Algoritmik Program Tasarımı, Akış Şemaları ve Programlama. Bilgisayar Mühendisliğine Giriş 1

ALGORİTMA VE PROGRAMLAMA (Bölüm 1) Prof. Dr. Hakan Ündil - Elektronik Teknolojisi Güz Bölüm 1-2

BÖLÜM 3: AKIŞ DİYAGRAMLARI

... ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

İstanbul Teknik Üniversitesi IEEE Öğrenci Kolu

PROGRAMLAMA ve YAZILIM. Sayısal Analiz Yrd.Doç.Dr. Zekeriya PARLAK

Algoritmalar. 3. Açıklık: Her işlem (komut) açık olmalı ve farklı anlamlar içermemeli.

if (ad == "Sabri") Console.WriteLine("Merhaba Sabri. Ne zamandır gözükmüyodun...");

HSancak Nesne Tabanlı Programlama I Ders Notları

Transkript:

Algoritma ve Akış Şemaları Algoritma Tanımı, Algoritma Özellikleri, Algoritma Tasarımı, Akış Şemaları, Dallanma Simgeleri Döngü Simgeleri, Akış Şeması Tasarımı, Akış Şeması Özellikleri, N-S Şeması, W-O Diyagramları Muhammet Baykara mbaykara@firat.edu.tr

Algoritma Algoritma bir problemin çözümünde izlenecek yol anlamına gelir. Tüm programlama dillerinin temeli algoritmaya dayanmaktadır. İki farklı algoritma oluşturma şekli vardır. Birincisi akış diyagramı şeklinde oluşan algoritmalar, ikincisi ise düz yazı (pseudo kod) ile oluşturulan algoritmalardır. Pseudo kod dediğimiz kısım ile algoritmayı akış diyagramı yerine basit kelimeler ile açıklayıcı bir şekilde sıralamaya dayanır. Kısacası yapılacak adımları tek tek yazmak olarak tanımlanabilir.

Algoritmada Olması Gereken Özellikler Etkin ve Genel Olma: Algoritma etkin olmalı ve gereksiz tekrarlar bulunmamalıdır. Gerektiğinde diğer algoritmalar içerisinde kullanılabilmelidir. Her koşulda ve giriş değerinde doğru sonuca ulaşmalıdır. Sonlu Olma: Her türlü olasılık için algoritma sonlu adımda bitmelidir. Algoritma sonsuz döngüye girmemelidir. Yanılmazlık: Algoritma tekrar yürütüldüğünde aynı giriş değerleri için aynı sonuç elde edilmelidir.

Algoritmada Olması Gereken Özellikler Giriş Çıkış Tanımlı Olma: Algoritmalarda giriş ve çıkış bilgileri olmalıdır. Dışarıdan gelen verilere giriş bilgisi denir. Bu veriler algoritmada işlenir ve çıkış bilgisini oluşturur. Çıkış bilgisi her algoritmada mutlaka vardır. Algoritmaların temel amacı giriş bilgisini işleyerek çıkış bilgisi oluşturmaktır. Başarım: Amaç donanım gereksinimi (bellek kullanımı gibi), çalışma süresi gibi performans kriterlerini dikkate alarak yüksek başarımlı programlar yazmak olmalıdır.

Örnek Bir Algoritma (Doğrusal Akış Şemaları) En basit bir algoritma günlük doğal dil kullanılarak aşağıdaki gibi olabilir. Algoritma 1: 1- Klavyeden girilen bir sayıyı oku. 2- Sayı üzerinde istenen işlemi yap; örneğin girilen sayının karesini hesapla. 3- Sonucu ekrana yaz. Başla Sayı Sonuc=Sayı^2 Sonuç Dur

Örnek Bir Algoritma (MANTIKSAL AKIŞ ŞEMALARI) Geniş ölçüde mantıksal kararları içeren akış şemalarıdır. Hesap düzenleri genellikle basittir. Algoritma 2: Adım 1-Başla Adım 2-A,B'yi oku Adım 3-A=B ise Adım 7'ye git Adım 4-A>B ise Adım 6'ya git Adım 5-B'yi yaz Adım 8'e git Adım 6-A'yı yaz Adım 8'e git Adım 7-"A ve B eşit mesajını yaz Adım 8-DUR

Örnek Bir Algoritma (Yineli-Döngülü AKIŞ ŞEMALARI) Sorunun çözümü için, çözümde yer alan herhangi bir adım ya da aşamanın birden fazla kullanıldığı akış şemalarına denir. Adım 1-Başla Adım 2-INOT=0 Adım 3-ISAYI=0 Adım 4-ONOT oku Adım 5-INOT=INOT+ONOT Adım 6-ISAYI=ISAIY+1 Adım 7-ISAYI<3ise Adım 4'e git Adım 8-NORT=INOT/3 Adım 9-NORT YAZ Adım 10-DUR

Kaba (Pseudo) Kod ve Gerçek Kod Kaba-kod, bir algoritmanın yarı programlama dili kuralı, yarı konuşma diline dönük olarak ortaya koyulması/tanımlanmasıdır. Kaba-kod, çoğunlukla, bir veri yapısına dayandırılmadan algoritmayı genel olarak tasarlanır. Gerçek kod ise, algoritmanın herhangi bir programlama diliyle, belirli bir veri yapısı üzerinde gerçekleştirilmiş halidir.

Akış Şeması Simgeleri

Döngüler Belirli bir iş bir çok kez tekrarlanacaksa, programda bu iş bir kez yazılır ve döngü deyimleriyle istenildiği kadar tekrar tekrar çalıştırılabilir. Bir döngüde, arka arkaya tekrarlanan deyimler döngü blokunu oluşturur. Bu deyimler birden çoksa { } bloku içine alınır. Bir döngü blokunda çok sayıda deyim olabileceği gibi, iç-içe döngüler de olabilir. Program akışının döngü blokunu bir kez icra etmesine döngünün bir adımı (bir tur) diyeceğiz.

Döngü Çeşitleri- Repeat-Until Döngüsü Repeat Until döngüsü belirteceğiniz bir şart doğru oluncaya kadar Repeat ile Until arasına yazacağınız bütün komutları tekrar tekrar başa giderek çalıştırır. Ta ki until ile belirttiğiniz şart doğru oluncaya kadar. Genel kullanımı: Repeat İşlem 1 İşlem 2 İşlem 3...... Until (sart);

Döngü Çeşitleri- While Döngüsü Döngünün başlangıcında, döngü içerisinde yer alan yönergelerin işlenip işlenmeyeceğine ilişkin karar vermek için koşul kontrol edilir. Eğer koşul yanlış olursa döngü içerisindeki hiçbir yönerge işleme alınmaz. Eğer koşul doğru ise döngü içerisindeki tüm yönergeler çalıştırılır ve tekrar döngünün başına dönülür. Döngü, koşul durumu yanlış olana kadar devam eder.

Döngü Çeşitleri- For Döngüsü for deyimi ve for deyimi kullanılarak oluşturulacak döngü yapısı, işlemlerin tekrar sayısının önceden belli olduğu durumlarda kullanılır. for(ifade1;ifade2;ifade3) { Deyim1; Deyim2;... Deyim_n; } Deyim_x;

Döngü Bloklarına Döngü Dışından Gidilmesi Go To bir metod içerisinde bir işlemi yaptıktan sonra özellikle başka bir metoda gitmesi istenirs ya da bir switch case içerisinde tek değere göre birden fazla case gezdirmek gerekirse kullanılır. Etiketimiz: int i = 0; if (i == 0) { MessageBox.Show("Cevabı Bildiniz"); Close(); } else goto Etiketimiz;

Akış Şeması Örneği 2. dereceden denklemin kökünü bulan akış şeması;

Algoritma ve İlişki Tanımlanması İçin Çeşitli Yöntemler Metinsel Tanımlama Akış Şeması N-S (Nassi-Schnederman) Şemaları W-O (Warnier-Orr) Şemaları -- Bachman Notasyonu Crow s Foot Spec Dili IDEF1XERD Spec Dili UML Yazılım Modelleme Dili SysML Sistem Modelleme

Sorularınız