160 likes | 413 Views
ALGORİTMA. VE AKIŞ ŞEMALARI. Algoritma. Bir sorunu çözebilmek için gerekli olan mantıksal adımların, çözüme ulaşmak için izlenecek yolun belirlenmesidir. Akış Şeması. Herhangi bir sorunun çözümü için izlenmesi gereken adımların görsel olarak simge yada sembollerle ifade edilmiş şeklidir.
E N D
ALGORİTMA VE AKIŞ ŞEMALARI
Algoritma • Bir sorunu çözebilmek için gerekli olan mantıksal adımların, çözüme ulaşmak için izlenecek yolun belirlenmesidir.
Akış Şeması • Herhangi bir sorunun çözümü için izlenmesi gereken adımların görsel olarak simge yada sembollerle ifade edilmiş şeklidir. • Algoritma oluşturmak ve akış şeması ile ifade etmek, problemin çözümünü planlamaya yardım eder, hata riskini azaltır.
AKIŞ ŞEMASI SEMBOLLERİ BAŞLA/BİTİR SORGU / KARAR VERİ AL OKU,YAZ DÖNGÜ İŞLEM BAĞLAYICI
Problemin algoritmaya çevrilmesi Problem 1 Algoritma 1 • Susadınız ve su içmeniz gerekiyor. Susuzluk probleminizi çözecek algoritmayı planlayınız. Başla Cüzdanında kaç para var? Al. Kantine git Parayı ver Suyu al İç Bitir Bu şekilde açık uçlu bir problemin başka algoritmaları da olabilir.
Bu algoritmanın akış şeması Başla Cüzdanında kaç para var?Al. Kantine git Parayı ver Suyu al İç Bitir BAŞLA Algoritma Akış Diagramı Paranın miktarını oku Kantine 200 adımda git Parayı ver Suyu al. Suyu iç. BİTİR
Algoritmaları belirlenen problemlerin akış şemalarını çizelim AKIŞ DİAGRAMI PROGRAMI
Arkadaşına sor Kantine git Parayı ver Suyu al İç Hayır yoksa Evet varsa Algoritma 2 Arkadaşın su için yardımcı oldu mu? Başla Paran var mı? Hayır vermezse Evet verirse Suyu al İç Bitir
Başla Arkadaşına sor Kantine dön Paran var mı? Hayır Evet Algoritma 2 için akış diagramı Yardımcı olana kadar tekrar et : Su almama yardım eder misin? Kantine 200 adımda git Parayı ver Suyu al Suyu al. Suyu iç Suyu iç. Bitir
Örnek: Kenar uzunlukları verilen dikdörtgenin, alan hesabını yapan algoritmanın hazırlanması Girilen sayıları OKU Dörtgenin alanı Alan ALGORİTMA AKIŞ DİAGRAMI Kısa kenar için değer gir, oku Uzun kenar için değer gir,oku Kısa kenarı a, uzun kenarı b değerine ata. Alan değişkenine a x b ‘yi ata Sonucu yazdır. a : Girilen ilk sayıyı ata b : Girilen ikinci sayıyı ata Başla Alan = a * b Bitir
Problemin algoritmaya çevrilmesi Problem 2 Algoritma 1 • Klavyeden girilen iki sayı toplatıp, sonuç tek sayı ise “Tek sayı” çift sayı ise “Çift Sayı” yazdıran programın algoritmasını ve akış diagramını gösteriniz. Başla Klavyeden girilen sayıları oku değişkenlere ata. İki sayıyı topla ve toplam değişkenine ata. Toplam değişkeni tek sayı ise “Tek sayı” yazsın. Bitir “Çift sayı” yazsın.
Algoritmanın akış şeması ile gösterilmesi Başla Girilen sayıları OKU Algoritma 1 Akış Diagramı Başla Klavyeden girilen sayıları oku ve değişkenlere ata. İki sayıyı topla ve toplam değişkenine ata. Toplam değişkeni tek sayı ise “Tek sayı” yazsın. Bitir Sayı1 : Girilen ilk sayıyı ata Sayı2 : Girilen ikinci sayıyı ata Toplam = Sayı1 + Sayı2 “Çift sayı” yazsın. “Toplam tek sayı” YAZ Toplam çift mi? “Toplam çift sayı” YAZ Bitir
Problemin algoritmaya çevrilmesi Problem 3 Algoritma 1 • Klavyeden girilen iki sayıyı okuyup büyük-küçük karşılaştıran, sonucu ekrana yazan algoritmayı ve akış şemasını yazınız. Başla Klavyeden girilen sayıları oku ve değişkenlere ata. Sayı1>sayı2 ise “1. sayı daha büyük” yaz Değilse Sayı2>Sayı1 ise “2.sayı daha büyük” yaz. Değilse “iki sayı eşit” yaz. Bitir
BAŞLA Sayı1,Sayı2 OKU Algoritma1 Akış Şeması (Diagramı) Başla Klavyeden girilen sayıları oku ve değişkenlere ata. Sayı1>sayı2 ise “1. sayı daha büyük” yaz Değilse Sayı2>Sayı1 ise “2.sayı daha büyük” yaz. Değilse “iki sayı eşit” yaz. Bitir Evet Evet “1. Sayı büyük” YAZ Sayı1>Sayı2 Hayır “2. Sayı büyük” YAZ Sayı2>Sayı1 Hayır “Sayı1 = Sayı2 ” YAZ BİTİR