You are on page 1of 18

Sayaç İfadesi

S=S+1

İşlemde sağdaki ifadede değişkene “1” eklemekle


bulunan sonuç yine kendisi olan soldaki değişkene
aktarılmaktadır. Bu tür işlemlere algoritmada “sayaç”
yada “döngü” ismi verilir. Burada artım 1 dir. Yani
sayaç işlem sırası her geldiğinde bir artmaktadır.
Sayacın artım değeri problemin durumuna göre
1 den de farklı olabilir. Genelde s, n, i ve sayac
kelimeleri kullanılır.

25 a.k.

ƒ Örnek : Klavyeden girilen bir yazıyı 5 kez yazdıran


algoritma ve akış şemasını oluşturunuz.

( Y : Yazı, S : Sayaç )
1. Başla
2. Y yi oku
3. Y yi yaz
4. S = S + 1
5. Eğer S < 5 ise 3.adıma git
6. Dur

26 a.k.
c) Çizgisel ifade (akış şeması)

ƒ Herhangi bir sorunun çözümü için izlenmesi gerekli olan


aritmetik ve mantıksal adımların görsel olarak simgelerle
ifade edilmiş şekline "akış şeması" ya da akış diyagramı
adı verilir.
ƒ Akış şemaları sorun çözümlenmesi sürecinin daha kolay
anlaşılır biçime getirilmesi, iş akışının kontrol edilmesi ve
programın kodlanmasının kolaylaştırılması içindir
ƒ Uygulamada çoğunlukla, yazılacak programlar için önce
programın ana adımlarını gösteren genel bir akış şeması
hazırlanır. Daha sonra her adım için ayrıntılı akış
şemalarının çizimi yapılır.

27 a.k.

Başla Dur

Klavye Kart Kağıt Ekran

İşlem Fonksiyon
çağırma

Koşullu
Döngü
Dallanma

Sakla Doğrudan
Veri tabanı

Dış Akış şeması sembolleri


İç

28 a.k.
Örnek : Klavyeden bir öğrencinin adı, soyadı ve iki tane
sınav notu okunmaktadır. Okunan sınav notunun
ortalamasını bulan, aşağıdaki formatta ekrana yazan
algoritmayı yazıp, akış şemasını oluşturunuz.
Adı:
Soyadı:
Akış Diyagramı
Ortalama:
Çözüm Başla

Ad,soyad,
1. Başla not1,not2 oku
2. Ad, Soyad, not1,not2 oku
3. ort=(not1+not2)/2 ort=(not1+not2)/2
4. “Adı:” ad yaz
5. “Soyadı:” soyad yaz
Ad, soyad, ort yaz
6. “Ortalama:” ort yaz
7. Dur
Dur
29 a.k.

Örnek : Klavyeden birbirinden farklı iki sayı okunmaktadır.


Büyük olan sayıyı önce, küçük olan sayıyı ise sonra
yazdıran algoritmayı yazarak akış diyagramını çiziniz.

1. Başla
2. sayi1, sayi2 oku
3. eğer sayi1>sayi2 ise sayi1, sayi2 yaz ve 5. adıma git
4. sayi2, sayi1 yaz
5. Dur

30 a.k.
Başla

sayi1,sayi2 oku

evet
eğer sayi1>sayi2 sayi1, sayi2 yaz

hayır

sayi2, sayi1 yaz

Dur

31 a.k.

ƒ Örnek : Klavyeden birbirinden farklı üç sayı okunmaktadır.


Okunan bu sayıların toplamını sayaç yöntemini kullanarak
bulan algoritmayı yazarak akış diyagramını çiziniz.

ƒ 1. Başla
ƒ 2. toplam=0,s=0
ƒ 3. sayi oku
ƒ 4. s=s+1
ƒ 5. toplam=toplam+sayi
ƒ 6.eger s<3 ise 3. adıma git
ƒ 7. toplam yaz
ƒ 8.Dur

32 a.k.
Başla

toplam=0, s=0

sayi oku

toplam=toplam+s

evet
eğer s<3

hayır

toplam yaz

Dur

33 a.k.

Algoritmada işlem türleri

a) Ardışık (doğrusal, sıralı) işlem


b) Koşullu (Mantıksal) işlem
c) Döngülü (iteratif, çevrimli, yineli) işlem

Bir bilgisayar programının geliştirilmesinde kullanılan


programlama dili ne olursa olsun bu programların
akış diyagramlarında genel olarak yalnız bu üç
yapı kullanılır.

34 a.k.
Ardışık işlemler
a) Ardışık işlemler

1.Adım – Bütün işlemlerin sırayla


biribirini takip ettiği akış

2.Adım – Daha önceki işlemlere


geri dönülmez
3.Adım
– Karşılaştırma yapılmaz

35 a.k.

a) Ardışık işlemler
ÖRNEK : İki sayının çarpımının akış şeması
bulunmasıyla ilgili algoritma başla
şöyledir.
Değişkenler A oku
A:Birinci sayı,
B:İkinci sayı
B oku
C:İki sayının çarpımı(A*B)
Algoritma
C=A*B
1. Başla
2. A'yı oku
3. B'yi oku C yazdır
4. C=A*B
5. C'yi yaz dur
6. Dur
36 a.k.
Örnek:Yarıçapı verilen çemberin alanını ve çevresini
hesaplayan program akışını çiziniz.

başla

Yarıçapı oku

Alan=3.14*yarıçap*yarıçap

Çevre=2*3.14*yarıçap

Alan ve çevre
Değerlerini yazdır

dur

37 a.k.

b) Koşullu işlemler
Algoritmanın yürütülme ardışıklığı yapılan işlemler
sonucu alınan değere bağlıdır. Bu değere göre
algoritma farklı dallarda yürütülebilir.

ƒ Karşılaştırma ifadesi
ƒ DoğruÆBir koldan
ƒ YanlışÆDiğer koldan

Koşullu İşlem Yapısı

38 a.k.
b) Koşullu işlemler
Geniş ölçüde mantıksal kararları içeren akış
şemalarıdır. Hesap düzenleri genellikle basittir.

Örnek : Klavyeden girilen bir sayının pozitif, negatif veya sıfıra eşit olma
durumunu hesaplayıp yazdıran algoritma ve akış şemasını hazırlayınız.

1. Başla
2. S sayısını oku
3. Eğer S > 0 ise “Pozitif” yaz,
4. Eğer S < 0 ise “Negatif” yaz,
5. Eğer S = 0 ise “Sıfıra eşit” yaz,
6. Dur

39 a.k.

b) Koşullu işlemler

BAŞLA

S yi oku

S>0 S<0
S:0

YAZ YAZ
“Pozitif” S=0 “Negatif”

YAZ
“Sıfıra eşit”

DUR

40 a.k.
Örnek:Üçkenarının uzunluğu girilen bir üçgenin eşkenar olup
olmadığını test edecek programın akış şemasını çiziniz.

başla

A,B,C’yi oku

H E
A=B

H
Eşkenar A=C
değildir yaz E

Eşkenar eşkenardır
Değildir

dur
41 a.k.

c) Döngülü işlemler
ƒ Sorunun çözümü için,çözümde yer alan herhangi bir adım
ya da adımların birden fazla kullanıldığı akış şemalarına
döngülü şemalar denir.

42 a.k.
d) Döngülü işlemler
while döngüsü repeat-until veya for döngüsü
do- while döngüsü

Önceki işlemler Önceki işlemler Önceki işlemler

işlemler

karşılaştırma N defa

karşılaştırma
işlemler işlemler

Sonraki işlemler Sonraki işlemler


Sonraki işlemler

ƒ Aynı işlemleri birçok defa tekrar eden akış


şemalarıdır.

43 a.k.

DÖNGÜ KOMUTLARI

Programlama dilinde ardışık işlemlerin yapılmasını


sağlayan komutlardır. Kontrol değişkeni başlangıç, bitiş
ve adımdan oluşur.
Örneğin n değişkeni için n=1,15,1 ifadesi kullanılırken
burada;
n :kontrol değişkeni
1 : n değişkeninin başlangıç değerini
15: n değerinin bitiş değerini
1: n değeri 1 den 15 e kadar kaçar kaçar artması
gerektiğini ifade eder.

44 a.k.
d) Döngülü işlemler

BAŞLA

OKU Y

Sayısı bilinen döngülerde;


başlangıç değeri, son
S = 0 , 5, 1 değer, artış sayısı

YAZ Y

Döngünün çalıştığı bölüm

DUR
45 a.k.

Örnek : 1’den 100’e kadar sayıları yazdıran program akış diyagramını çiziniz

Başla

Sayaç=1

Sayac <=100

Sayacı ekrana
yazdır

Sayac=sayac+1

Dur

46 a.k.
Örnek : 3 öğrencinin bir sınavdan aldıkları notların
ortalamasının bulunması
Değişkenler
ONOT:Öğrencinin notu
TNOT:Notların toplamı
NORT:Notların ortalaması
OSAYI:Öğrenci sayısı
Algoritma
1. Başla
2. TNOT=0
3. OSAYI=0
4. ONOT oku
5. TNOT=TNOT+ONOT
6. OSAYI=OSAYI+1
7. OSAYI<3 ise Adım 4'e git
8. NORT=TNOT/3
9. NORT YAZ
10. Dur
47 a.k.

Örnek açıklama

ƒ Bu örnekte 4,5,6 adımları üç kez, 7. adım


ise dört kez tekrarlanacak. 7. adımda ilk 3
karşılaştırma zamanı osayı (öğrenci sayısı)
<3 olduğundan 4-6 adımları tekrarlanacak.
4.cü karşılaştırmada ise osayı=3 olduğu için
algoritmanın sonraki adımları 7-10 adımları
gerçekleştirilecek
ƒ Göründüğü gibi aynı bir algoritmada farklı
işlem türleri buluna biliyor

48 a.k.
Genel Uygulamalar
1:Ekrana beş tane sayı okunmaktadır. Okunan sayıların toplamını ve
çarpımını bulan algoritmayı yazınız.

1. başla
2. i = 0 : top = 0 : çarp = 1
3. sayı oku
4. i = i + 1
5. top = top + sayı
6. carp = carp * sayı
7. if i < 5 ise git 3
8. “sayıların toplamı =”, top yaz
9. “sayıların çarpımı =”, carp yaz
10. dur

49 a.k.

2.Ekrana 10 kişinin adı, soyadı ve doğum tarihi okunmaktadır. Okunan doğum


tarihlerine göre yaşını bulan adı, soyadı ile birlikte yazdıran
algoritmayı yazınız.
1. i=0
2. ad, soyad, dy oku
3. i=i+1
4. yas=by-dy
5. ad, soyad, yas yaz
6. if i<10 ise 2’ye git
7. dur
3:Ekrana 4 kişinin yaşı okunmaktadır. Yaşı 20’ye eşit olanların sayısını bulan
algoritmayı yazınız.
1. başla
2. i=0 : ys=0
3. yas oku
4. i=i+1
5. if yas=20 ise ys=ys+1
6. if i<4 ise 2’ye git
7. “yaşı 20’ye eşit olanların sayısı=”,ys yaz
8. dur

50 a.k.
4:Ekrana üç tane yaş okunmaktadır. Okunan yaşlardan 15 ile 25 arasında
olanların sayısıny bulan algoritmayı yazınız.
1. başla
2. i=0 : ys=0
3. yas oku
4. i=i+1
5. if yas >=15 ve yas<= 25 ise ys=ys+1
6. if i<3 ise 2’ye git
7. ys yaz
8. dur

5:Ekrana dört tane sayı okunmaktadır. Okunan sayılardan pozitif olanların


sayısını bulan ve yazdıran algoritmayı yazınız.
1. başla
2. i= 0 , ps=0
3. sayı oku
4. i=i+1
5. if sayı > 0 ise ps=ps+1
6. if i<4 ise 2’ye git
7. ‘’pozitiflerin sayısı=’’ , ps yaz
8. dur

51 a.k.

6:Ekrana dört tane sayı okunmaktadır. Okunan sayılardan tek ve çift olanların
sayısını bulan algoritmayı yazınız.
1. başla
2. i=0 , teks=0 , cifts=0
3. a oku
4. i=i+1
5. k=(-1)**a
6. if k=-1 ise teks=teks+1
7. if k=1 ise cifts=cifts+1
8. if i<4 ise 2’ye git
9. teks, cifts yaz
10. dur
7:1’den 7’ye kadar olan sayılar arasından tek olanların çarpımını bulan
algoritmayı yazınız.
1. başla
2. carp=1 : i=1
3. capr=carp*i
4. i=i+2
5. if i<= 7 ise 3’ye git
6. “çarpım=”, carp yaz
7. dur

52 a.k.
8: 3’den 15’e kadar olan çift sayıların ortalamasını bulan algoritmayı yazınız.

1. başla
2. top=0 : cs=0 : i=4
3. top=top+i : cs=cs+1
4. i=i+2
5. if i<= 15 ise 3’ye git
6. orta=top/cs
7. orta yaz
8. dur

9: 2’den 7’ye kadar olan tek ve çift sayıların ayrı ayrı toplamlarını bulan
algoritmayı yazınız.

1. başla
2. top=0 : i=3
3. top=top+i
4. i=i+2
5. if i<= 7 ise 3’ye git
6. “tek sayıların toplamı=”, top yaz
7. i=2 : ctop=0
8. ctop=ctop+i
9. i=i+2
10. if i<= 7 ise 8’ye git
11. “çift sayıların toplamı=”, ctop yaz
12. dur
53 a.k.

10: Ekrana girilen N sayısına göre 1’den N’ye kadar olan sayıların
karelerinin toplamını hesaplayan algoritmayı yazınız.
1. başla
2. t=0, i=0
3. n oku
4. i=i+1
5. t=t+i**2
6. eğer i<=n git 4
7. t yaz
8. dur
11: 1’den 17’ye kadar olan tek sayıların toplamını bulan algoritmayı döngü
yapısını kullanarak yazın.

1. başla
2. top=0
3. döngü i=1,17,2
4. top=top+i
5. döngü sonu i
6. top yaz
7. dur

54 a.k.
Akış Diyagramları Genel Uygulamalar
Örnek1: 1’den 100’e kadar olan tam sayıların toplamını bulan algoritma ve
akış şemasının oluşturulması
Başla
Durum 1 (while döngüsü)
I=1
1.Başla Toplam = 0
2.I = 1 , Toplam = 0
3.Eğer I = 100 ise 6.Adıma git
4.Toplam = Toplam + I E
I=100
5.I = I +1 al ve 3.Adıma Dön
6.Toplam değerini yaz
7.Dur H
Toplam = Toplam +1

I = I +1

Toplam yaz

DUR

55 a.k.

Akış Diyagramları Genel Uygulamalar


Örnek1: 1’den 100’e kadar olan tam sayıların toplamını bulan algoritma ve
akış şemasının oluşturulması
Başla
Durum 2 (repeat-until döngüsü)
I=1
1.Başla Toplam = 0
2.I = 1 , Toplam = 0
3.Toplam = Toplam + I
Toplam = Toplam +1
4.Eğer I = 100 ise 6.Adıma git
5.I = I +1 al ve 3.Adıma Dön
6.Toplam değerini yaz E
7.Dur I=100 Toplam yaz

H
I = I +1

DUR

56 a.k.
Akış Diyagramları Genel Uygulamalar
Örnek1: 1’den 100’e kadar olan tam sayıların toplamını bulan algoritma ve
akış şemasının oluşturulması
Başla
Durum 3 (for döngüsü ile)
Toplam = 0
1. Başla
2. Toplam=0
3. döngü I=1,100,1
i=1,100,1
4. Toplam=Toplam + I
5. döngü sonu I
6. Toplam yaz
7. Dur Toplam = Toplam +i

Toplam yaz

DUR

57 a.k.

Örnek2: Girilen 3 tam sayıdan en büyüğünü bulan algoritma ve akış şemasının


oluşturulması

1.Başla Başla
2.A,B,C sayılarını oku
3.Buyuk = A A,B,C oku
4.Eğer Buyuk < B ise Buyuk = B
5.Eğer Buyuk < C ise Buyuk = C
Buyuk = A
6.Buyuk değerini yaz
7.Dur.
Buyuk<B H Buyuk<C H
Toplam yaz

E
E
Buyuk = B Buyuk = C DUR

58 a.k.
Örnek3: 1 ile 100 arasındaki tam sayılardan tek ve çift olanların ayrı ayrı
toplamını bulan algoritma ve akış şemasının oluşturulması.

Başla
1.Başla
2.S = 1 , TTEK = 0 , TCIFT = 0
3.TTEK = TTEK + S s=1, ttek=0, tcift=0
4.TCIFT = TCIFT + S + 1
5.Eğer S = 99 ise 8.Adıma git
ttek=ttek+s
6.S = S +2
7.Adıma git
8.TTEK ve TCIFT değerlerini yaz
9.Dur. tcift=tcift+s

evet
s = 99 ttetk, tcift yaz

hayır

s=s+1 Dur

59 a.k.

Örnek 4: İki sayının ortalamasını bulan algoritmayı yazıp, akış diyagramını


çiziniz.

Başla

sayi1,sayi2 oku

toplam=sayi1+sayi2

ortalama=toplam/2

ortalama yaz

Dur

60 a.k.

You might also like