Algoritma ders slaytı

Download Report

Transcript Algoritma ders slaytı

Slide 1

ALGORİTMA
VE AKIŞ ŞEMALARI


Slide 2

Algoritma
• Bir sorunu çözebilmek için gerekli olan
mantıksal adımların, çözüme ulaşmak için
izlenecek yolun belirlenmesidir.


Slide 3

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.


Slide 4

AKIŞ ŞEMASI SEMBOLLERİ
BAŞLA/BİTİR

SORGU / KARAR

VERİ AL
OKU,YAZ

DÖNGÜ

İŞLEM

BAĞLAYICI


Slide 5

Problem Çözümünde İzlenecek Yollar
Soruyu, problemi tanımlama
Algoritma geliştirme
Girdi/Çıktı biçimi belirleme
Akış şemasını çizme
Kodlama

Programı sınama


Slide 6

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.


Slide 7

Bu algoritmanın akış şeması
Algoritma

Başla

Akış Diagramı
BAŞLA

Cüzdanında kaç para var?Al.
Kantine git

Paranın
miktarını oku

Parayı ver
Suyu al

Kantine 200
adımda git

İç
Bitir

Parayı ver
Suyu al.
Suyu iç.
BİTİR


Slide 8

Algoritmaları belirlenen
problemlerin akış şemalarını çizelim
AKIŞ DİAGRAMI PROGRAMI


Slide 9

Algoritma 2
Başla
Arkadaşına sor

Arkadaşın
su için
yardımcı
oldu mu?

Hayır yoksa

Paran var mı?

Evet varsa

Kantine git
Parayı ver

Hayır vermezse

Suyu al
İç

Evet verirse
Suyu al
İç
Bitir


Slide 10

Algoritma 2 için akış diagramı
Başla

Arkadaşına sor

Hayır

Paran
var mı?

Kantine dön
Kantine 200
adımda git

Yardımcı olana
kadar tekrar et :
Su almama yardım
eder misin?

Parayı ver

Suyu al

Suyu iç

Evet

Suyu al.

Bitir

Suyu iç.


Slide 11

Örnek: Kenar uzunlukları verilen dikdörtgenin,
alan hesabını yapan algoritmanın hazırlanması
ALGORİTMA

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.

AKIŞ DİAGRAMI

Başla
Girilen sayıları
OKU
a : Girilen ilk sayıyı ata
b : Girilen ikinci sayıyı ata

Alan = a * b
Dörtgenin alanı
Alan

Bitir


Slide 12

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.


Slide 13

Algoritmanın akış şeması ile gösterilmesi
Algoritma 1

Akış Diagramı

Başla

Başla

Klavyeden girilen sayıları oku ve
değişkenlere ata.
İki sayıyı topla ve toplam
değişkenine ata.

Girilen sayıları
OKU
Sayı1 : Girilen ilk sayıyı ata
Sayı2 : Girilen ikinci sayıyı ata

Toplam = Sayı1 + Sayı2

Toplam değişkeni
tek sayı ise
“Tek sayı” yazsın.

“Çift sayı”
yazsın.
Toplam çift mi?

Bitir
“Toplam çift sayı” YAZ

Bitir

“Toplam tek
sayı”
YAZ


Slide 14

Problemin algoritmaya çevrilmesi
Problem 3

• 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.

Algoritma 1

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


Slide 15

Algoritma1

Akış Şeması (Diagramı)
BAŞLA

Başla

Sayı1,Sayı2
OKU

Klavyeden girilen sayıları oku ve
değişkenlere ata.
Sayı1>sayı2 ise “1. sayı daha
büyük” yaz

“1. Sayı büyük”
YAZ

Değilse Sayı2>Sayı1 ise “2.sayı
daha büyük” yaz.

“2. Sayı büyük”
YAZ

Değilse “iki sayı eşit” yaz.
Bitir

Evet

Sayı1>Sayı2
Hayır
Evet

Sayı2>Sayı1
Hayır

“Sayı1 = Sayı2 ”
YAZ

BİTİR