ݺߣ

ݺߣShare a Scribd company logo
ALGORİTMA VE AKIŞ ŞEMALARI
programlama dilleri 1
- 2. hafta -
Araş. Gör. Nesibe YALÇIN
BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ
MÜHENDİSLİK FAKÜLTESİ
BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
2
Haftalık Ders Planı
― Genel Tekrar
― Sözde Kod- Akış Şeması
― Çok Boyutlu Diziler
― Dizgeler
― İşaretçiler
― Void İşaretçiler
― Dinamik Bellek Yönetimi
― Dosya İşlemleri
― Yapılar
― Yapı ve İşaretçiler
― Bitsel İşlemler
3
Algoritma
― Algoritma, bir problemin çözümünde izlenecek yol anlamına
gelir ve problemin çözümünün adımlar halinde yazılmasıyla
oluşturulur.
― Algoritma, verilerin bilgisayara hangi çevre biriminden
girileceğinin, problemin nasıl çözüleceğinin, hangi
basamaklardan geçirilerek sonuç alınacağının, sonucun nasıl ve
nereye yazılacağının sözel olarak ifade edilmesidir.
― Algoritma, bir programlama dili değildir.
― Algoritma, genellikle matematikte ve programlamada bir işi
yapmak için tanımlanan, belli bir başlangıcı ve sonu olan, açıkça
belirlenmiş basamaklardır.
4
Algoritma
Örnek: Çay demleme algoritması
1. Başla
2. Çaydanlığa su doldur.
3. Ocağı yak.
4. Çaydanlığı ocağa koy.
5. Bir süre suyun kaynamasını bekle.
6. Su kaynadı mı? Kaynamadıysa 5.adıma git. Kaynadıysa 7.adıma git.
7. Çayı demle.
8. Çaydanlığa su ilave et.
9. Çaydanlığı tekrar ocağa koy.
10. Bir süre suyun kaynamasını bekle.
11. Su kaynadı mı? Kaynamadıysa 10.adıma git. Kaynadıysa 12.adıma git.
12. Bir süre çayın demlenmesini bekle.
13. Çay demlendi mi? Demlenmediyse 12.adıma git. Demlendiyse 14.adıma git.
14. Çayı bardaklara servis yap.
15. Dur
5
Algoritma
Örnek: Trafik ışıklarından otomobille geçiş algoritması
1. Başla
2. Trafik lambasına bak.
3. Lamba Yeşil yanıyor mu? Yeşil yanıyorsa 6. adıma git.
4. Lamba Sarı yanıyor mu? Sarı yanıyorsa 2. adıma git.
5. Lamba Kırmızı yanıyor mu? Kırmızı yanıyorsa 2. adıma git.
6. Geç.
7. Dur
6
Algoritma
Her algoritma aşağıdaki kriterleri sağlamalıdır:
1. Girdi: Sıfır veya daha fazla değer dışarıdan verilmeli.
2. Çıktı : En azından bir değer üretilmeli.
3. Açıklık: Her işlem (komut) açık olmalı ve farklı anlamlar
içermemeli.
4. Sonluluk: Her türlü olasılık için algoritma sonlu adımda
bitmeli.
5. Etkinlik: Her komut kişinin kalem ve kağıt ile yürütebileceği
kadar basit olmalıdır.
―Bir program için 4. özellik geçerli değildir, işletim sistemleri
gibi program sonsuza dek çalışırlar .
7
Algoritma
Algoritmada 3 temel bileşen vardır:
1. Değişkenler: Dışarıdan girilen ve bizim oluşturduğumuz
değerleri tutan elemanlardır.
2. Algoritma: Gerekli adımların mantıksal bir sıra ile
yazılmasıdır.
3. Akış Diyagramı: Adımların geometrik şekillerle ve adımlar
arasındaki ilişkilerin ve yönünün oklar ile gösterilmesidir.
8
Algoritma
― Örnek: Verilen bir sayının küpünün bulunmasının algoritması
Adım 1- Başla
Adım 2- Sayıyı oku
Adım 3- Sayının küpünü hesapla
Adım 4- Dur
― Değişkenler:
Sayımız= A
Sayının küpü= B
Algoritma:
Adım 1- Başla
Adım 2- A’ yı oku
Adım 3- B=A*A*A yı hesapla
Adım 4- B’ yi yaz
Adım 5- Dur
9
Algoritma - Örnekler
― Vize ve final notu girilen öğrencinin başarı notunu, vize notunun
%40 ve final notunun %60’ ını alarak bulan algoritmayı yazınız.
1. Başla
2. vize, final oku
3. basarinotu=(vize*40/100+final*60/100)
4. basarinotu’ nu yaz
5. Dur
― Fiyatı girilen ürüne %18 kdv ekleyerek son fiyatı hesaplayan
algoritmayı yazınız.
1. Başla
2. fiyat oku
3. kdv=fiyat*18/100
4. sonfiyat=fiyat+kdv
5. sonfiyat’ı yaz
6. Dur
Değişkenler:
Vize, final, basarinotu
Değişkenler:
fiyat, kdv, sonfiyat
10
Algoritma - Örnekler
― Karenin alan ve çevresini bulan algoritmayı yazınız.
1.Başla
2.kenar oku
3.alan=kenar*kenar
4.cevre=4*kenar
5.alan’ ı yaz
6.cevre’ yi yaz
7.Dur
11
Algoritma - Örnekler
― Klavyeden girilecek iki sayıdan büyük olanından küçük
olanını çıkarıp sonucu ekrana yazacak program için algoritmayı
yazınız.
1.Başla
2.A sayısını oku
3.B sayısını oku
4. Eğer A büyüktür B ise sonuc=A-B
5.Değilse sonuc=B-A
6.sonuc’ u yaz
7.Dur
12
Algoritma - Örnekler
― Klavyeden girilen doğal sayının (0-999.999 aralığındaki)
basamak sayısını bulan programın algoritmasını yazınız.
1. Başla
2. 0-999.999 aralığında sayı oku
3. Eğer (sayı>=0) && (sayı=9)
4. Yaz (‘’1 basamaklı’’)
5. Değilse Eğer (sayı>=10) && (sayı=99)
6. Yaz(‘’2 basamaklı’’)
7. Değilse Eğer (sayı>=100) && (sayı=999)
8. Yaz(‘’3 basamaklı’’)
9. Değilse Eğer (sayı>=1000) && (sayı=9999)
10.Yaz(‘’4 basamaklı’’)
11.Değilse eğer (sayı>=10.000) && (sayı=99.999)
12.Yaz(‘’5 basamaklı’’)
13.Değilse eğer (sayı>=100.000) && (sayı=999.999)
14.Yaz(‘’6 basamaklı’’)
15.Dur
13
Algoritma - Örnekler
― Klavyeden girilen bir N değerine kadar olan pozitif sayıları
toplayan ve sonucu ekrana basan algoritmayı yazın.
1.Başla
2.N’ yi oku
3.toplam=0
4.X=1
5.toplam=toplam+X
6.X=X+1
7.Eğer X<=N ise 5. adıma git
8.toplam’ ı yaz
5.Dur
14
Algoritma - Örnekler
― Klavyeden girilen 10 adet sayının tam bölenlerini bulup
listeleyen bir algoritma geliştiriniz.
1.Başla
2.i=1
3.dizi(i)’ yi oku
4.x=1
5.Eğer dizi(i)%x=0 ise x’ i yaz
6.x=x+1
7.Eğer x<=dizi(i) ise 5. adıma git
8.i=i+1
9.Eğer i<=10 ise 3. adıma git
10.Bitir
15
Akış Şeması
― Algoritma tanımlanırken, ya bir dil kullanılmalıdır ya da
çeşitli sembolik gösterimlerden ve şemalardan yararlanılabilir.
― Algoritmayı ifade etmek için kullanılan simgesel
gösterimlerin başında akış şeması gelmektedir.
― Akış şeması, tasarlanacak algoritmanı şekilsel olarak ortaya
konulmasıdır.
16
17
Akış Şeması Simgeleri
18
Akış Şeması Simgeleri
19
Akış Şeması Simgeleri
20
Akış Şeması Simgeleri
21
10 öğrenci için girilen nota
göre geçip kaldığını bulan
programın akış şeması
22
Uygulama Örnekleri
― Dik kenarları girilen dik üçgenin hipotenüsünü hesaplayan
programın algoritma ve akış diyagramını oluşturunuz.
― Girilen işlem türüne (*, /, –, +) göre iki sayıyı işleme alıp
sonucunu ekrana yazan programın algoritma ve akış diyagramını
oluşturunuz.
― Klavyeden şifre olarak 123 girilene kadar kaç adet tahmin
yapıldığını ekrana yazan algoritma ve akış şemasını geliştiriniz.
23
Uygulama Örnekleri
― Bir n değeri için şeklindeki fonksiyonun
değerini hesaplayıp ekrana algoritma ve akış şemasını
geliştiriniz.
― Bir okulda bulunan 20 sınıftaki 30'ar öğrencinin her birinin 8
dersten aldıkları notların ortalamasını bulan ve öğrenci ismi ile
not ortalamasını ekrana yazan programın algoritması ve akış
şemasını oluşturunuz. Kullanıcının girdiği 10 sayıdan sadece çift
olanları toplayıp ekrana yazdıran algoritma ve akış diyagramını
oluşturunuz.

More Related Content

What's hot (19)

KPD'nin Tavsiye Ettigi Kocluk Sozlesmesi
KPD'nin Tavsiye Ettigi Kocluk SozlesmesiKPD'nin Tavsiye Ettigi Kocluk Sozlesmesi
KPD'nin Tavsiye Ettigi Kocluk Sozlesmesi
Kocluk Platformu Dernegi
Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...
Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...
Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...
VsimPPT
Strukture TE DHENASH NEN C
Strukture TE DHENASH NEN CStrukture TE DHENASH NEN C
Strukture TE DHENASH NEN C
Adem Velika
İnternet ve Teknoloji Bağımlılığı Semineri
İnternet ve Teknoloji Bağımlılığı Semineriİnternet ve Teknoloji Bağımlılığı Semineri
İnternet ve Teknoloji Bağımlılığı Semineri
GozdeUfuklar
Zaman yönetimi sunumu
Zaman yönetimi sunumuZaman yönetimi sunumu
Zaman yönetimi sunumu
Hande Aksay
6-ma'ruza.ppt
6-ma'ruza.ppt6-ma'ruza.ppt
6-ma'ruza.ppt
uktamAmaki
Qida təhlükəsizliyinin idarə olunması
Qida təhlükəsizliyinin idarə olunmasıQida təhlükəsizliyinin idarə olunması
Qida təhlükəsizliyinin idarə olunması
Imran Agayev
Skyscanner Design System. One year in.
Skyscanner Design System. One year in.Skyscanner Design System. One year in.
Skyscanner Design System. One year in.
James Ferguson
İnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve Yönetimİnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve Yönetim
Yusuf Yıldız
EFT 2 AKADEMİ 2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...
EFT 2 AKADEMİ  2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...EFT 2 AKADEMİ  2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...
EFT 2 AKADEMİ 2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...
Kıbris Altınçağ Bilgi Merkezinde
İş değerleme ve ücret yöneti̇mi̇
İş değerleme ve ücret yöneti̇mi̇İş değerleme ve ücret yöneti̇mi̇
İş değerleme ve ücret yöneti̇mi̇
Tugba Ozen
Automation through APIs with the new UiPath Integration Service
 Automation through APIs with the new UiPath Integration Service Automation through APIs with the new UiPath Integration Service
Automation through APIs with the new UiPath Integration Service
Cristina Vidu
İş kurma süreci
İş kurma süreciİş kurma süreci
İş kurma süreci
Ҿşո
İŞ ETÜDÜ ve İŞ ölçümü
İŞ ETÜDÜ ve İŞ ölçümüİŞ ETÜDÜ ve İŞ ölçümü
İŞ ETÜDÜ ve İŞ ölçümü
Hussein Al-hussein
Protokol ve gorgu kurallari
Protokol ve gorgu kurallariProtokol ve gorgu kurallari
Protokol ve gorgu kurallari
Sebnem Ozdemir
Ergonomi
ErgonomiErgonomi
Ergonomi
Teknikakademiisg
Hijyen ve temizlik
Hijyen ve temizlikHijyen ve temizlik
Hijyen ve temizlik
ethemuslu
Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...
Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...
Урок 9 для 3 класу - Перетворення інформації з одного виду в інший. Пристрої ...
VsimPPT
Strukture TE DHENASH NEN C
Strukture TE DHENASH NEN CStrukture TE DHENASH NEN C
Strukture TE DHENASH NEN C
Adem Velika
İnternet ve Teknoloji Bağımlılığı Semineri
İnternet ve Teknoloji Bağımlılığı Semineriİnternet ve Teknoloji Bağımlılığı Semineri
İnternet ve Teknoloji Bağımlılığı Semineri
GozdeUfuklar
Zaman yönetimi sunumu
Zaman yönetimi sunumuZaman yönetimi sunumu
Zaman yönetimi sunumu
Hande Aksay
Qida təhlükəsizliyinin idarə olunması
Qida təhlükəsizliyinin idarə olunmasıQida təhlükəsizliyinin idarə olunması
Qida təhlükəsizliyinin idarə olunması
Imran Agayev
Skyscanner Design System. One year in.
Skyscanner Design System. One year in.Skyscanner Design System. One year in.
Skyscanner Design System. One year in.
James Ferguson
İnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve Yönetimİnşaat Sektöründe Proje Planlama ve Yönetim
İnşaat Sektöründe Proje Planlama ve Yönetim
Yusuf Yıldız
EFT 2 AKADEMİ 2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...
EFT 2 AKADEMİ  2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...EFT 2 AKADEMİ  2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...
EFT 2 AKADEMİ 2.DERS BOLLUK BEREKET VE PARA İLE İLGİLİ E.F.T VE U.L.F.T TEKN...
Kıbris Altınçağ Bilgi Merkezinde
İş değerleme ve ücret yöneti̇mi̇
İş değerleme ve ücret yöneti̇mi̇İş değerleme ve ücret yöneti̇mi̇
İş değerleme ve ücret yöneti̇mi̇
Tugba Ozen
Automation through APIs with the new UiPath Integration Service
 Automation through APIs with the new UiPath Integration Service Automation through APIs with the new UiPath Integration Service
Automation through APIs with the new UiPath Integration Service
Cristina Vidu
İş kurma süreci
İş kurma süreciİş kurma süreci
İş kurma süreci
Ҿşո
Hijyen ve temizlik
Hijyen ve temizlikHijyen ve temizlik
Hijyen ve temizlik
ethemuslu

Viewers also liked (9)

Karakter dizileri
Karakter dizileriKarakter dizileri
Karakter dizileri
Nesibe Yalçın
Çok boyutlu diziler
Çok boyutlu dizilerÇok boyutlu diziler
Çok boyutlu diziler
Nesibe Yalçın
Addiee
AddieeAddiee
Addiee
Gamze Tuna Büyükköse
Algoritmalar
AlgoritmalarAlgoritmalar
Algoritmalar
buse tekin aydın
Doğrusal Programlama
Doğrusal ProgramlamaDoğrusal Programlama
Doğrusal Programlama
Hasan Subaşı
Bir e öğrenme dersi geliştirmek için neler gerekir?
Bir e öğrenme dersi geliştirmek için neler gerekir?Bir e öğrenme dersi geliştirmek için neler gerekir?
Bir e öğrenme dersi geliştirmek için neler gerekir?
Gamze Tuna Büyükköse

Similar to Algoritma ve akış şemaları (20)

Programlamaya Giriş, Algoritma ve Akış Şeması Diyagramı
Programlamaya Giriş, Algoritma ve Akış Şeması DiyagramıProgramlamaya Giriş, Algoritma ve Akış Şeması Diyagramı
Programlamaya Giriş, Algoritma ve Akış Şeması Diyagramı
Ahmet POLAT
Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1
atasss
Algoritma - akış diyagramları - sözde kod
Algoritma - akış diyagramları - sözde kodAlgoritma - akış diyagramları - sözde kod
Algoritma - akış diyagramları - sözde kod
MetehanUar1
Kadir proje
Kadir projeKadir proje
Kadir proje
kerem zakout
C-Sharp.pdf
C-Sharp.pdfC-Sharp.pdf
C-Sharp.pdf
Bayram Eker
programlama giris C++ Ders notu fonksiyon
programlama giris C++ Ders notu fonksiyonprogramlama giris C++ Ders notu fonksiyon
programlama giris C++ Ders notu fonksiyon
uleAmet
Algoritma Ödevi 4
Algoritma Ödevi 4Algoritma Ödevi 4
Algoritma Ödevi 4
efedincer
başlıkk 11111
başlıkk 11111başlıkk 11111
başlıkk 11111
ahmettuna343
Mühendislik problemlerinin bilgisayar ortamında sayısal analiz yöntemleriyle...
Mühendislik problemlerinin  bilgisayar ortamında sayısal analiz yöntemleriyle...Mühendislik problemlerinin  bilgisayar ortamında sayısal analiz yöntemleriyle...
Mühendislik problemlerinin bilgisayar ortamında sayısal analiz yöntemleriyle...
Abdurrahman Tunç
GTU week 1 bullshits about somethings that ı dont know
GTU week 1 bullshits  about somethings that ı dont knowGTU week 1 bullshits  about somethings that ı dont know
GTU week 1 bullshits about somethings that ı dont know
afturk514
1. Pythonda Sayılar.pdf
1. Pythonda Sayılar.pdf1. Pythonda Sayılar.pdf
1. Pythonda Sayılar.pdf
Anonymousc1QPi2tiK
C# Sunusu - 1
C# Sunusu - 1C# Sunusu - 1
C# Sunusu - 1
Bilgisayar Kulübü
Programlama Temelleri Akış Diyagramı
Programlama Temelleri Akış DiyagramıProgramlama Temelleri Akış Diyagramı
Programlama Temelleri Akış Diyagramı
kadirolmez
Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1
Uğurkan Ateş
x86 Mimarisi ve Tersine Mühendislik
x86 Mimarisi ve Tersine Mühendislikx86 Mimarisi ve Tersine Mühendislik
x86 Mimarisi ve Tersine Mühendislik
canyoupwn.me
Python Programlama Dilleri Ders Notlari.pdf
Python Programlama Dilleri Ders Notlari.pdfPython Programlama Dilleri Ders Notlari.pdf
Python Programlama Dilleri Ders Notlari.pdf
ZaferBilge2
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleriLog yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Ertugrul Akbas
Programlamaya Giriş, Algoritma ve Akış Şeması Diyagramı
Programlamaya Giriş, Algoritma ve Akış Şeması DiyagramıProgramlamaya Giriş, Algoritma ve Akış Şeması Diyagramı
Programlamaya Giriş, Algoritma ve Akış Şeması Diyagramı
Ahmet POLAT
Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1Algoritmalarve programlamai ders_1
Algoritmalarve programlamai ders_1
atasss
Algoritma - akış diyagramları - sözde kod
Algoritma - akış diyagramları - sözde kodAlgoritma - akış diyagramları - sözde kod
Algoritma - akış diyagramları - sözde kod
MetehanUar1
programlama giris C++ Ders notu fonksiyon
programlama giris C++ Ders notu fonksiyonprogramlama giris C++ Ders notu fonksiyon
programlama giris C++ Ders notu fonksiyon
uleAmet
Algoritma Ödevi 4
Algoritma Ödevi 4Algoritma Ödevi 4
Algoritma Ödevi 4
efedincer
Mühendislik problemlerinin bilgisayar ortamında sayısal analiz yöntemleriyle...
Mühendislik problemlerinin  bilgisayar ortamında sayısal analiz yöntemleriyle...Mühendislik problemlerinin  bilgisayar ortamında sayısal analiz yöntemleriyle...
Mühendislik problemlerinin bilgisayar ortamında sayısal analiz yöntemleriyle...
Abdurrahman Tunç
GTU week 1 bullshits about somethings that ı dont know
GTU week 1 bullshits  about somethings that ı dont knowGTU week 1 bullshits  about somethings that ı dont know
GTU week 1 bullshits about somethings that ı dont know
afturk514
Programlama Temelleri Akış Diyagramı
Programlama Temelleri Akış DiyagramıProgramlama Temelleri Akış Diyagramı
Programlama Temelleri Akış Diyagramı
kadirolmez
Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1Roket Yazılımı Eğitimi Hafta 1
Roket Yazılımı Eğitimi Hafta 1
Uğurkan Ateş
x86 Mimarisi ve Tersine Mühendislik
x86 Mimarisi ve Tersine Mühendislikx86 Mimarisi ve Tersine Mühendislik
x86 Mimarisi ve Tersine Mühendislik
canyoupwn.me
Python Programlama Dilleri Ders Notlari.pdf
Python Programlama Dilleri Ders Notlari.pdfPython Programlama Dilleri Ders Notlari.pdf
Python Programlama Dilleri Ders Notlari.pdf
ZaferBilge2
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleriLog yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Log yönetimi ve siem projelerindeki en önemli kriter EPS değerleri
Ertugrul Akbas

Algoritma ve akış şemaları

  • 1. ALGORİTMA VE AKIŞ ŞEMALARI programlama dilleri 1 - 2. hafta - Araş. Gör. Nesibe YALÇIN BİLECİK ŞEYH EDEBALİ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ
  • 2. 2 Haftalık Ders Planı ― Genel Tekrar ― Sözde Kod- Akış Şeması ― Çok Boyutlu Diziler ― Dizgeler ― İşaretçiler ― Void İşaretçiler ― Dinamik Bellek Yönetimi ― Dosya İşlemleri ― Yapılar ― Yapı ve İşaretçiler ― Bitsel İşlemler
  • 3. 3 Algoritma ― Algoritma, bir problemin çözümünde izlenecek yol anlamına gelir ve problemin çözümünün adımlar halinde yazılmasıyla oluşturulur. ― Algoritma, verilerin bilgisayara hangi çevre biriminden girileceğinin, problemin nasıl çözüleceğinin, hangi basamaklardan geçirilerek sonuç alınacağının, sonucun nasıl ve nereye yazılacağının sözel olarak ifade edilmesidir. ― Algoritma, bir programlama dili değildir. ― Algoritma, genellikle matematikte ve programlamada bir işi yapmak için tanımlanan, belli bir başlangıcı ve sonu olan, açıkça belirlenmiş basamaklardır.
  • 4. 4 Algoritma Örnek: Çay demleme algoritması 1. Başla 2. Çaydanlığa su doldur. 3. Ocağı yak. 4. Çaydanlığı ocağa koy. 5. Bir süre suyun kaynamasını bekle. 6. Su kaynadı mı? Kaynamadıysa 5.adıma git. Kaynadıysa 7.adıma git. 7. Çayı demle. 8. Çaydanlığa su ilave et. 9. Çaydanlığı tekrar ocağa koy. 10. Bir süre suyun kaynamasını bekle. 11. Su kaynadı mı? Kaynamadıysa 10.adıma git. Kaynadıysa 12.adıma git. 12. Bir süre çayın demlenmesini bekle. 13. Çay demlendi mi? Demlenmediyse 12.adıma git. Demlendiyse 14.adıma git. 14. Çayı bardaklara servis yap. 15. Dur
  • 5. 5 Algoritma Örnek: Trafik ışıklarından otomobille geçiş algoritması 1. Başla 2. Trafik lambasına bak. 3. Lamba Yeşil yanıyor mu? Yeşil yanıyorsa 6. adıma git. 4. Lamba Sarı yanıyor mu? Sarı yanıyorsa 2. adıma git. 5. Lamba Kırmızı yanıyor mu? Kırmızı yanıyorsa 2. adıma git. 6. Geç. 7. Dur
  • 6. 6 Algoritma Her algoritma aşağıdaki kriterleri sağlamalıdır: 1. Girdi: Sıfır veya daha fazla değer dışarıdan verilmeli. 2. Çıktı : En azından bir değer üretilmeli. 3. Açıklık: Her işlem (komut) açık olmalı ve farklı anlamlar içermemeli. 4. Sonluluk: Her türlü olasılık için algoritma sonlu adımda bitmeli. 5. Etkinlik: Her komut kişinin kalem ve kağıt ile yürütebileceği kadar basit olmalıdır. ―Bir program için 4. özellik geçerli değildir, işletim sistemleri gibi program sonsuza dek çalışırlar .
  • 7. 7 Algoritma Algoritmada 3 temel bileşen vardır: 1. Değişkenler: Dışarıdan girilen ve bizim oluşturduğumuz değerleri tutan elemanlardır. 2. Algoritma: Gerekli adımların mantıksal bir sıra ile yazılmasıdır. 3. Akış Diyagramı: Adımların geometrik şekillerle ve adımlar arasındaki ilişkilerin ve yönünün oklar ile gösterilmesidir.
  • 8. 8 Algoritma ― Örnek: Verilen bir sayının küpünün bulunmasının algoritması Adım 1- Başla Adım 2- Sayıyı oku Adım 3- Sayının küpünü hesapla Adım 4- Dur ― Değişkenler: Sayımız= A Sayının küpü= B Algoritma: Adım 1- Başla Adım 2- A’ yı oku Adım 3- B=A*A*A yı hesapla Adım 4- B’ yi yaz Adım 5- Dur
  • 9. 9 Algoritma - Örnekler ― Vize ve final notu girilen öğrencinin başarı notunu, vize notunun %40 ve final notunun %60’ ını alarak bulan algoritmayı yazınız. 1. Başla 2. vize, final oku 3. basarinotu=(vize*40/100+final*60/100) 4. basarinotu’ nu yaz 5. Dur ― Fiyatı girilen ürüne %18 kdv ekleyerek son fiyatı hesaplayan algoritmayı yazınız. 1. Başla 2. fiyat oku 3. kdv=fiyat*18/100 4. sonfiyat=fiyat+kdv 5. sonfiyat’ı yaz 6. Dur Değişkenler: Vize, final, basarinotu Değişkenler: fiyat, kdv, sonfiyat
  • 10. 10 Algoritma - Örnekler ― Karenin alan ve çevresini bulan algoritmayı yazınız. 1.Başla 2.kenar oku 3.alan=kenar*kenar 4.cevre=4*kenar 5.alan’ ı yaz 6.cevre’ yi yaz 7.Dur
  • 11. 11 Algoritma - Örnekler ― Klavyeden girilecek iki sayıdan büyük olanından küçük olanını çıkarıp sonucu ekrana yazacak program için algoritmayı yazınız. 1.Başla 2.A sayısını oku 3.B sayısını oku 4. Eğer A büyüktür B ise sonuc=A-B 5.Değilse sonuc=B-A 6.sonuc’ u yaz 7.Dur
  • 12. 12 Algoritma - Örnekler ― Klavyeden girilen doğal sayının (0-999.999 aralığındaki) basamak sayısını bulan programın algoritmasını yazınız. 1. Başla 2. 0-999.999 aralığında sayı oku 3. Eğer (sayı>=0) && (sayı=9) 4. Yaz (‘’1 basamaklı’’) 5. Değilse Eğer (sayı>=10) && (sayı=99) 6. Yaz(‘’2 basamaklı’’) 7. Değilse Eğer (sayı>=100) && (sayı=999) 8. Yaz(‘’3 basamaklı’’) 9. Değilse Eğer (sayı>=1000) && (sayı=9999) 10.Yaz(‘’4 basamaklı’’) 11.Değilse eğer (sayı>=10.000) && (sayı=99.999) 12.Yaz(‘’5 basamaklı’’) 13.Değilse eğer (sayı>=100.000) && (sayı=999.999) 14.Yaz(‘’6 basamaklı’’) 15.Dur
  • 13. 13 Algoritma - Örnekler ― Klavyeden girilen bir N değerine kadar olan pozitif sayıları toplayan ve sonucu ekrana basan algoritmayı yazın. 1.Başla 2.N’ yi oku 3.toplam=0 4.X=1 5.toplam=toplam+X 6.X=X+1 7.Eğer X<=N ise 5. adıma git 8.toplam’ ı yaz 5.Dur
  • 14. 14 Algoritma - Örnekler ― Klavyeden girilen 10 adet sayının tam bölenlerini bulup listeleyen bir algoritma geliştiriniz. 1.Başla 2.i=1 3.dizi(i)’ yi oku 4.x=1 5.Eğer dizi(i)%x=0 ise x’ i yaz 6.x=x+1 7.Eğer x<=dizi(i) ise 5. adıma git 8.i=i+1 9.Eğer i<=10 ise 3. adıma git 10.Bitir
  • 15. 15 Akış Şeması ― Algoritma tanımlanırken, ya bir dil kullanılmalıdır ya da çeşitli sembolik gösterimlerden ve şemalardan yararlanılabilir. ― Algoritmayı ifade etmek için kullanılan simgesel gösterimlerin başında akış şeması gelmektedir. ― Akış şeması, tasarlanacak algoritmanı şekilsel olarak ortaya konulmasıdır.
  • 16. 16
  • 21. 21 10 öğrenci için girilen nota göre geçip kaldığını bulan programın akış şeması
  • 22. 22 Uygulama Örnekleri ― Dik kenarları girilen dik üçgenin hipotenüsünü hesaplayan programın algoritma ve akış diyagramını oluşturunuz. ― Girilen işlem türüne (*, /, –, +) göre iki sayıyı işleme alıp sonucunu ekrana yazan programın algoritma ve akış diyagramını oluşturunuz. ― Klavyeden şifre olarak 123 girilene kadar kaç adet tahmin yapıldığını ekrana yazan algoritma ve akış şemasını geliştiriniz.
  • 23. 23 Uygulama Örnekleri ― Bir n değeri için şeklindeki fonksiyonun değerini hesaplayıp ekrana algoritma ve akış şemasını geliştiriniz. ― Bir okulda bulunan 20 sınıftaki 30'ar öğrencinin her birinin 8 dersten aldıkları notların ortalamasını bulan ve öğrenci ismi ile not ortalamasını ekrana yazan programın algoritması ve akış şemasını oluşturunuz. Kullanıcının girdiği 10 sayıdan sadece çift olanları toplayıp ekrana yazdıran algoritma ve akış diyagramını oluşturunuz.