Upload
muhammed-ali-koeker
View
253
Download
1
Embed Size (px)
Citation preview
1
1 SAYILARLA İLGİLİ ALGORİTMALAR ....................................................................... 6
1.1 Girilen iki sayının toplamını bulan algoritma ve akış şeması ..................................... 6
1.2 1’den 100’e kadar olan tam sayıların toplamını bulan algoritma ve akış şeması ....... 7
1.3 Girilen 3 tamsayıdan en büyügünü bulan algoritma ve akış şeması .......................... 8
1.4 Girilen bir tamsayının tek yada çift oldugunu bulan algoritma ve akış şeması .......... 8
1.5 1 ile 100 arasındaki tam sayılardan tek ve çift olanların ayrı ayrı toplamını bulan
algoritma ve akış şeması ........................................................................................................ 9
1.6 üç haneli bir tamsayının birler, onlar ve yüzler hanesini bulan algoritma ve akış
şeması 10
1.7 Rastgele girilen 10 sayıdan negatif olanların ve pozitif olanların sayısını bulan
algoritma ve akış şeması ...................................................................................................... 11
1.8 Girilen bir tamsayının tam are olup olmadıgını bulan algoritma ve akış şeması ...... 12
1.9 Ard arda girilen 10 sayıdan istenilen bir sayıya en yakın olan sayının bulunmasını saglayan algoritma ve akış şeması ....................................................................................... 13
1.10 1 ile 100 arasındaki tam sayılardan 2 katının 1 fazlası 5 ile tam bölünen kaç sayı
oldugunu bulan algoritma ve akış şeması .......................................................................... 14
1.11 (sayı sıkıştırma örnegi) 1 ile 100 arasındaki tam sayılardan bir sayı okutularak bu
sayıya ulaşmak için bu aralıkta sayılar girilerek okutulan sayıya ulaşmayı saglayan bulan
algoritma ve akış şeması ...................................................................................................... 14
1.12 1ile 10 arsındaki tam sayıların çarpımını bulan algoritma ve akış şeması ................ 15
1.13 10 ile 100 arasındaki tam sayılardan asal sayı olanları bulan algoritma ve akış
şeması ................................................................................................................................. 16
1.14 Ard arda girilen rasgele 10 tam sayının ortalaması ile bu sayılardan en büyük ve en
küçük olanının ortalamasını bularak elde edilen bu 2 ortalamanın farkını bulan algoritma ve
akış şeması ......................................................................................................................... 18
1.15 Girirlen 4 haneli bir tam sayının yüzler hanesindeki sayı degerinin 3 ile bölümünden
elde edilen kalanın aynı sayının birler hanesindeki deger ile farkını bulan algoritma ve akış
şeması 19
1.16 Tam kısmındaki degeri en fazla 4 haneli girilen bir rasyonel sayının tam kısmının
100’ler hanesindeki degeri çift ise bu degerin kübünün bir tamkare olup olmadıgını bulan
algoritma ve akış şeması ...................................................................................................... 19
1.17 ondalıklı kısmı iki haneli girilen pozitif bir rasyonel saının ondalıklı kısmının sayı
degerinin bir tamkare olup olmadıgını bulan algoritma ve akış şeması ............................. 20
1.18 ondalıklı kısmı 2 haneli girilien poziytif bir rasyonel sayının ondalıklı kısmının tam
sayı degerinin en yakın tam kare sayıya uzaklıgını bulan algoritma ve akış şeması .......... 21
1.19 ondalıklı kısmı 3 haneli girilen pozitif bir rasyonel sayının tam kısmı ile ondalıklı
kısmının tam sayı degerinin farkı pozitif ise bu degerin bir tam kare sayı olup olmadıgını
bulan algoritma ve akış şeması ........................................................................................... 22
1.20 Rasgele girilen bir rasyonel sayının ondalıklı kısmının ve tam kısmının hane sayısını
bulan algoritma ve akış şeması ............................................................................................. 24
1.21 Girilen bir tam sayının hanelerindeki en büyük sayıyı bulan algoritma ve akış şeması 25
1.22 Girilen bir tam sayının hanelerindeki tekrar eden sayıları bulan algoritma ve akış
şeması 26
1.23 Girirlen herhangi bir tam sayının hanelerine ayrılmasını saglayan algoritma ve akış
şeması 27
2 DİZİ KAVRAMI VE ÖRNEKLER ................................................................................. 28
http://alikoker.name.tr
2
2.1 N elemanlı bir sayı dizisinin girişini yapan algoritma ve akış şeması ..................... 28
2.2 10 elemanlı bir sayı dizisinin elemanlarının toplamını bulan algoritma ve akış şeması 29
2.3 10 elemanlı bir sayı dizisinin en büyük elemanını bulan algoritma ve akış şeması . 30
2.4 10 elemanlı bir sayı dizisinede negatif elemanların toplamını bulan algoritma ve akış
şeması 31
2.5 10 elemanlı bir sayı dizisinde negatif ve pozitif elemanların ayrı ayrı ortalamasını bulan algoritma ve akış şeması ............................................................................................. 32
2.6 istenildigi kadar elemandan oluşan bir sayı dizisinde negatif ve pozitif elemanların
sayısını bulan algoritma ve akış şeması ................................................................................ 33
2.7 10 elemandan oluşan bir A dizisinde negatif elemanların ayrı bir diziye, pozitif
elemanların ayrı bir diziye yüklenmesini saglayan algoritma ve akış şeması .................... 33
2.8 N elemandan oluşan bir A sayı dizisinin küçükten büyüge dogru sıralanmasını
yapan algoritma ve akış şeması ............................................................................................ 35
2.9 N elemanlı bir sayı dizisinin küçükten büyüge dogru sıralanmasını saglayan
algoritma ve akış şeması ...................................................................................................... 36
2.10 Küçükten büyüge dogru sıralı bir şekilde girilen N elemanlı bir sayı dizisinde
istenilen bir sayıya yarılama işlemleriyle ulaşmayı saglayan algoritma ve akış şeması ...... 36
2.11 Rasgele 10 elemandan oluşan bir A sayı dizisinde negatif olan elemanların mutlak
degerlerini alarak dizi elemanlarının toplamını bulan algoritma ve akış şeması .................. 37
2.12 Rasgele N elemandan oluşan bir tam sayı dizisinde 3 ile tam bölünebilen sayıların
başka bir diziye yüklenmesini saglayan algoritma ve akış şeması ...................................... 38
2.13 İstenilen bir deger verilinceye kadar girilen sayıları diziye yükleyerek aritmetik
ortalamasını bulan algoritma ve akış şeması ........................................................................ 39
2.14 N elemandan meydana gelen ve küçükten büyüge dogru sıralanmış bir sayı dizisinin
büyükten küçüge dogru sıralanmasını degiştiren algoritma ve akış şeması, ........................ 40
2.15 N elemanlı bir tam sayı dizisinde tek ve çift elemanların sayısını bulan algoritma ve
akış şeması............................................................................................................................ 42
2.16 10 elemanlı bir rasyonel sayı dizisinde negatif ve pozitif elemanların ayrı ayrı ortalamalarının mutlak degerleri toplamının en yakın tam kare sayıya uzaklıgını bulan
algoritmave akış şeması ....................................................................................................... 42
2.17 10 elemanlı bir sayı dizisinin ortalaması ile her bir elemanın farkını bir diziye
yükleyerek bu dizideki negatif elemanların ortalamasını bulan algoritma ve akış şeması ... 44
2.18 N elemanlı bir tamsayı dizisinin ortalaması ile bu dizide 3 ile tam bölünebilen
sayıların farkının toplamının mutlak degerinin tam kısmını bir tam kare olup olmadıgını
araştıran algoritma ve akış şeması ........................................................................................ 44
3 MATRİSLER VE MATRİSLERE İLİŞKİN ALGORİTMA VE AKIŞ ŞEMALARI ... 45
3.1 NxN’lik bir matrisin elemanlarının girişini yapan algoritma ve akış şeması ........... 46
3.2 NxN’lik bir matrisin esas köşegeni üzerindeki elemanların toplamını bulan
algoritma ve akış şeması ...................................................................................................... 47
3.3 0’dan farklı NxN’lik bir matrisin esas köşegeni üzerindeki elemanlarını bir yapan
algoritma ve akış şeması ...................................................................................................... 48
3.4 NxN’lik bir matriste negatif ve pozitif elemanların sayısını ve ortalamalarını bulan
algoritma ve akış şeması ...................................................................................................... 49
3.5 NxM’lik bir matrisin en büyük elemanını bulan algoritma ve akış şeması .............. 50
3.6 NxN’lik bir matrisin satır ve sütun toplamlarını ayrı ayrı bulan algoritma ve akış
şeması 51
http://alikoker.name.tr
3
3.7 0Elemanter satır işlemleri yardımıyla NxN’ter satır işlemleri yardımıyla NxN’lik bir
matrisin esas köşegeni üzerindeki elemanlarının bir ve esas köşegeninin dışında kalan
elemanlarını 0 yapan algoritma ve akış şeması .................................................................. 52
3.8 NxN’lik bir matrisin transpozesinin bulunmasını saglayan algoritma ve akış şeması 53
3.9 Girilen 2 matrisin ortalamasını bulan algoritma ve akış şeması ............................. 54
3.10 Rasgele elmanlardan oluşan NxN’lik bir matrisin tek ve çift elemanlarının sayısını bulan algoritma ve akış şeması ............................................................................................. 55
3.11 N tam kare bir sayı olmak üzere N elemandan meydana gelen bir A dizisinin kare
matris şekline dönüştürülmesini saglayan algoritma ve akış şeması ................................... 56
3.12 NxN’lik bir A matrisinin simetrik olup olmadıgını araştıran algoritma ve akış şeması 57
3.13 NxM ve MxK’lık iki matrisin çarpımını bulan algoritma ve akış şeması ................ 58
3.14 NxN’lik bir kare matrisin tersinin bulunmasını saglayan algoritma ve akış şeması 59
3.15 NxN’lik bir tam sayı matrisinin esas köşegeni ile yedek köşegeni üzerindeki
elemanlarının toplamının bir tam kare sayı olup olmadıgını araştıran algoritma ve akış
şeması 60
3.16 NxN’lik bir sayı matrisinin esas köşegeni ile yedek köşegeni üzerindeki karşılıklı elemanların çarpımlarını bir diziye yükleyerek bu dizinin en büyük elemanını bulan
algoritma ve akış şeması ...................................................................................................... 60
3.17 NxN’lik bir sayı matrisinin her satırının en büyük elemanları ile her sütununun en
küçük elemanlarının karşılıklı toplamlarının bir tam kare sayı olup olmadıgını araştıran
algoritma ve akış şeması ...................................................................................................... 61
3.18 NxN’lik bir sayı matrisinin her bir satırının ayrı ayrı ortalamaları ile matrisin
transpozunun her bir satırının ayrı ayrı ortalamalarından karşılıklı olarak eşit olanların
sayısını bulan algoritma ve akış şeması ................................................................................ 62
3.19 N bilinmeyenli N denklemden meydana gelen lineer denklem sisteminin çözümünü
bulan algoritma ve akış şeması ............................................................................................. 64
4 SIRASAL ERİŞİMLİ DOSYALARA İLŞKİN ALGORİTMA VE AKIŞ ŞEMALARI 65
4.1 Sırasal erişimli bir dosyaya çalışanlara ait ad_soyad, sicil no ve maaş bilgilerini
kaydeden algoritma ve akış şeması ...................................................................................... 65
4.2 Yukarıdaki örnekte verilen dosyadan bilgileri okuyarak ekrana yazdıran algoritma
ve akış şeması ..................................................................................................................... 65
4.3 Bir dosyada ögrencilerin adı-soyadı, numarası ve bilgisayar dersinden almış
oldukları vize ve final notları kayıtlıdır. Bu dosyayı okutarak başarılı olan ögrencilerin
ekrana yazdırılmasını saglayan algoritma ve akış şeması ..................................................... 66
4.4 3. örnekte verilen ve ögrencilerin notlarına ilişkin bilgileri taşıyan sırasal erişimli
dosyadan istenilen bir kaydın silinmesini saglayan algoritma ve akış şeması ..................... 66
4.5 Ögrencilerin adı-soyadı, numarası ve bilgisayar dersinden almış oldukları başarı
notunun kayıtlı oldugu bir sırasal erişimli dosyadan, numarasına göre istenilen bir ögrenciye
ulaşılarak bu ögrenciye ait bilgilerden istenilenlerin degiştirilmesini saglayan algoritma ve
akış şeması .......................................................................................................................... 67
4.6 Çalışanlara ait ism, sicil numarası ve maaş bilgilerinin kayıtlı oldugu bir sırasal
erişimli bir dosyadanbu bilgilerin okutularak isimlerine göre alfabetik olarak sıralanmasını saglayan algoritma ve akış şeması ..................................................................................... 68
4.7 Bir öndeki örnekte tanımlanan dosyadan isim referans alınarak yarılama metodu ile
istenilen bir kayda ulaşmayı saglayan algoritma ve akış şeması ....................................... 69
http://alikoker.name.tr
4
4.8 Ögrencilerin adı-soyadı, numarası ve bilgisayar dersinden almış oldukları başarı
notları sırasal erişimli bir dosyada kayıtlıdır. Bu dosyayı okutarak sınıf başarı ortalamasını
ve en başarılı ögrenciyi bulan algoritma ve akış şeması ...................................................... 70
4.9 Sırasal erişimli bir dosyaya çalışanlara ait isim, sicil nosu, bölüm, saat ücreti, fazla
mesai ücreti ve bunun dışındaki diger gelirlerini tek kalemde kaydeden, bunlara ilişkin
gelirini hesaplayarak yazdıran, istenilen bir bölüme göre çalışanları listeleyen, en yüksek
gelire sahip kişiyi tespit eden algoritma ve akış şeması .................................................... 71
5 DOGRUDAN ERİŞİMLİ DOSYALARDA ALGORİTMA VE AKIŞ ŞEMALARI .... 72
5.1 Dogrudan erişimli bir dosyaya ad-soyad, sicil nosu ve maaş bilgilerini kaydeden
algoritma ve akış şeması .................................................................................................... 73
5.2 Bir önceki örnekte kaydedilen bilgilerden istenilene ulaşarak ekrana yazdırılmasını
saglayan algoritma v akış şeması ......................................................................................... 73
5.3 Dogrudan erişimli dosyaların güvenilir kullanılabilmesi için hazırlanmasını saglayan
algoritma ve akış şeması ...................................................................................................... 75
5.4 Bir önceki örnekte 100 kişi için hazırlanan dosyaya kayıt yapan algoritma ve akış
şeması 76
5.5 Bir önceki örnekte kayıt yapılan dogrudan erişimli dosyada istenilen bir kaydın
silinmesini saglayan algoritma ve akış şeması ..................................................................... 76
5.6 Örnek 4.4’te ad-soyad, sicil nosu ve maaş bilgileri kaydedilen kişilerin bilgilerini
okuyarak ekrana yazdırılmasını saglayan algoritma ve akış şeması ..................................... 78
5.7 (Güncelleme algoritması) 4.4’te ad_soyad, sicilnosu ve maaş bilgileri kaydedilen
kişilerdn istenilen birisine ulaşarak bu kişiye ilişkin bilgilerde degişiklik yapan algoritma
ve akış şeması ....................................................................................................................... 78
5.8 Dogrudan erişimli bir dosyaya kişilerin adı_soyadı, telefon nosu, ev adresi ve iş
adresi bilgilerini an menü altında kaydeden, listeleyen, istenilen bir kişiye ulaşmayı saglayan algoritma ve akış şeması ..................................................................................... 79
6 ÇEŞİTLİ KONULARDA ALGORİTMA VE AKIŞ ŞEMALARI ................................. 81
6.1 İkinci dereceden bir bilinmeyenli denklem sistemlerinin çözümlerini bulan
algoritma ve akış şeması .................................................................................................... 81
6.2 N bilinmeyenli N denklemden meydana gelen lineer denklem sisteminin çözümünü
bulan algoritma ve akış şeması ............................................................................................. 82
6.3 Girilen bir tarihin hangi güne rastladıgını bulan algoritma ve akış şeması .............. 83
6.4 Ögrencilerin adı_soyadı, numarası, bilgisayar dersinden almış oldukları vize ve final
notlarını dizilere yükleyerek başarı durumlarını tespit ettikten sonra başarısız olanları
başarısız digerlerine de orta, iyi ve pekiyi şeklinde belirleyen algoritma ve akış şeması .... 84
6.5 10’luk sayı sitemindeki bir sayıyı iki’lik bir sayı sistemine çeviren algoritma ve akış
şeması ................................................................................................................................. 85
6.6 T = x / a + ( x * x ) / a * (a + 1) + (x * x * x) / a * (a + 1) * (a + 2) + ..... |x| <= 1
serisinin ilk 5 teriminin toplamını hesaplayan algoritma ve akış şeması ............................. 85
6.7 N elemandan meydana gelen bir A dizisinin geometrik ortalamasını bulan algoritma
ve akış şeması ....................................................................................................................... 86
6.8 N elemandan meydana gelen bir A dizisinin harmonik ortalamasını bulan algoritma
ve akış şeması ....................................................................................................................... 87
6.9 (standart hata algoritması) N elemandan meydana gelen bir A dizisinin standart
hatasını bulan algoritma ve akış şeması ............................................................................. 88
http://alikoker.name.tr
5
6.10 (standart sapma algoritması) N sınıf aralıgı ve buna karşılık gelen N frekans
verildiginde,[(∑f(m-x) - (m-x)) / ∑f ]* [(∑f(m-x) - (m-x)) / ∑f)] ile tanımlanan standart
sapmayı bulan algoritma ve akış şeması .............................................................................. 88
6.11 (En küçük kareler yöntemi ile dogrusal regrasyon denkleminin bulunması ve
yaklaşık tahmin algoritması) X bagımsız degişken ve Y bagımlı degişken olmak üzere
dogrusal regrasyon denlemi: Y = A + BX şeklinde tanımlanmaktadır. ............................. 89
6.12 x’in farklı degerleri için y=f(x) fonksiyonunun bulunmasına ilişkin olgoritma ve
akış şeması .......................................................................................................................... 91
6.13 NxM’lik bir matrise kişilere ilişkin degişik bilgilerin yüklenerek istenildiginde
herhangi bir bilgisi girilerek ilgili kişiye ulaşılarak bilgilerinin yazdırılmasını saglayan
algoritma ve akış şeması .................................................................................................... 91
6.14 Sin x fonksiyonunun x=0 civarında seriye açılarak hesaplanmasını saglayan
algoritma ve akış şeması ...................................................................................................... 93
6.15 f(x)=e fonksiyonunun seriye açılımından faydalanarak hesaplanmasını saglayan
algoritma ve akış şeması ...................................................................................................... 94
6.16 LOG(X) fonksiyonun degerinin seriye açılımından yararlanarak hesaplayan
algoritma ve akış şeması .................................................................................................... 95
6.17 PI sayısının degerini seri açılımından yararlanarak hesaplayan algoritma ve akış
şeması 96,
http://alikoker.name.tr
6
1 SAYILARLA ĠLGĠLĠ ALGORĠTMALAR
1.1 Girilen iki sayının toplamını bulan algoritma ve akıĢ Ģeması
B
A, B
TOPLAM=A+B
TOPLAM
DUR
AKIS SEMASI ALGORĠTMA
A1. BaĢla,A2. A ve B sayılarını gir/oku,A3. TOPLAM= A+B al,A4. TOPLAM'ı yaz,A5. Dur
http://alikoker.name.tr
7
1.2 1’den 100’e kadar olan tam sayıların toplamını bulan algoritma ve akıĢ Ģeması
B
I=1
TOPLAM=0
TOPLAM=TOPLAM+I
I=100
I=I+1
TOPLAM
DUR
ALGORĠTMA
A1. BaĢla,A2. I=1, TOPLAM=0 al,A3. TOPLAM=TOPLAM+I al,A4. Eğer I=100 ise A6. adıma git,A5. I=I+1 al ve A3.adıma geri dön,A6. TOPLAM değerini yaz,A7. Dur.
E
H
AKIŞ ŞEMASI
http://alikoker.name.tr
8
1.3 Girilen 3 tamsayıdan en büyügünü bulan algoritma ve akıĢ Ģeması
B
A, B, C
BUYUK=A
BUYUK<B BUYUK=B
BUYUK<C BUYUK=C
BUYUK
DUR
H
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. A, B ve C sayılarını gir,A3. BUYUK=A al,A4. Eğer BUYUK<B ise BUYUK=B al,A5. Eğer BUYUK<C ise BUYUK=C al,A6. BUYUK degerini yaz,A7. Dur.
E
E
1.4 Girilen bir tamsayının tek yada çift oldugunu bulan algoritma ve akıĢ
http://alikoker.name.tr
9
Ģeması
B
A
B=TAM (A/2)*2
A=B
CIFT SAYI
TEK SAYI
DUR
E
H
A1. BaĢla,A2. A sayısını gir,A3. B=TAM (A/2)*2 al,A4. Eğer A=B ise A6. adıma git,A5. "GĠRĠLEN SAYI TEK SAYIDIR" yaz ve A7. adıma git,A6. "GĠRĠLEN SAYI ÇĠFT SAYIDIR" yaz,A7. Dur.
AKIġ ġEMASI ALGORĠTMA
1.5 1 ile 100 arasındaki tam sayılardan tek ve çift olanların ayrı ayrı toplamını bulan algoritma ve akıĢ Ģeması
http://alikoker.name.tr
10
1.6 üç haneli bir tamsayının birler, onlar ve yüzler hanesini bulan algoritma ve akıĢ Ģeması
B
A
YUZLER=TAM(A/100)*100
B=A-YUZLER
ONLAR=TAM(B/10)*10
BIRLER=B-ONLAR
YUZLER, ONLAR
BIRLER
DUR
A1. BaĢlaA2. A sayısını gir {3 haneli bir sayı},A3. YUZLER=TAM(A/100)*100 al,A4. B=A-ONLAR al,A5. ONLAR=TAM(B/10)*10 al,A6. BIRLER= B-ONLAR al,A7. YUZLER, ONLAR ve BIRLER degerlerini yaz,A8. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
11
1.7 Rastgele girilen 10 sayıdan negatif olanların ve pozitif olanların sayısını bulan algoritma ve akıĢ Ģeması
B
I=1NEG=0POZ=0
A
A=0
A<0
POZ=POZ+1
I=10
I=I+1
NEG=NEG+1
NEG, POZ
DUR
E
E
E
H
A1. BASLAA2. I=1, NEG=0, POZ=0 al,A3. A sayısını gir,A4. Eğer A=0 ise A7. adıma git,A5. Eğer A<0 ise NEG= NEG+1 al ve A7. adıma git,A6. POZ=POZ+1 al,A7. Eğer I=10 ise A10. adıma git,A8. I=I+1 al ve A3. adıma geri dön,A9. NEG ve POZ değerlerini yaz,A10. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
12
1.8 Girilen bir tamsayının tam are olup olmadıgını bulan algoritma ve akıĢ Ģeması
B
A
B=A^(1/2)
C=TAM(B)
D=C^2
A=D
BU SAYI TAM KARE DEĞĠL
DUR
BU SAYI TAM KARE
E
H
A1. BaĢla,A2. A sayısını gir,A3. B=A^ (1/2) al,A4. C=TAM(B) al,A5. D=C^2 al,A6. Eğer A=D ise A9. adıma git,,A7. "tam kare değil" yaz;A8. A10. adıma git;A9. "tam kare " yaz,A10. Dur:
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
13
1.9 Ard arda girilen 10 sayıdan istenilen bir sayıya en yakın olan sayının bulunmasını saglayan algoritma ve akıĢ Ģeması
BASLA
AB
YAKIN=A-BSY=B
SAYAC=1
SAYI
YAKIN<A-SAYI
YAKIN=A-SAYISY=SAYI
SAYAC=9
SAYAC=SAYAC+1
SY
DUR
E
H
E
H
A1. BaĢla,A2. A sayısınıI gir{istenilem sayının girilmesi},A3. B sayısını gir {ilk sayı},A4. YAKIN=MUTLAK(A-B), SY=B al;A5. SAYAC=1 al,A6. SAYI' yı gir;A7. Eğer YAKIN<MUTLAK(A-SAYI) ise A9. adıma git,A8. YAKIN= MUTLAK(A-SAYI), SY=SAYI al,A9. Eğer SAYAC=9 ise A12. adıma git,A10. SAYAC=SAYAC+1 al,A11 A6. adıma git,A12. SY' yi yaz,A13. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
14
1.10 1 ile 100 arasındaki tam sayılardan 2 katının 1 fazlası 5 ile tam bölünen kaç sayı oldugunu bulan algoritma ve akıĢ Ģeması
B
i=1, TOPLAM=0
A(i)
A(i)>=0
TOPLAM=TOPLAM+A(i)
TOPLAM=TOPLAM+A(i)
i=100
i=i+1
TOPLAM
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. I=1, TOPLAM=0 al,A3. A(I)'yı gir,A4. Eger A(I)>=0 ise A6. adıma git,A5. TOPLAM=TOPLAM+|A(I)| al ve A7. adıma gĠT,A6. TOPLAM=TOPLAM+A(I) al,A7. Eger I=10 iseA9. adıma gitA8. I=I+1 al ve A3. adıma git,A9. TOPLASM degerini yaz,A10. Dur.
1.11 (sayı sıkıştırma örnegi) 1 ile 100 arasındaki tam sayılardan bir sayı okutularak bu sayıya ulaşmak için bu aralıkta sayılar girilerek okutulan sayıya ulaşmayı saglayan bulan algoritma ve
http://alikoker.name.tr
15
akıĢ Ģeması
B
A
B
A=B
A<B
DAHA BUYUKSAYI GIR
DAHA KUCUKSAYI GIR
SAYIYI BILDINIZ
DUR
A1. BaĢla,A2. A sayısını oku,A3. Bir B sayısını gir,A4. Eğer A=B ise A10. adıma git,A5. Eğer A<B ise A8. adıma git,A6. "Daha buyuk sayı gir" yazA7. A3 adıma geri dön,A8. "Daha kucuk sayı gir" yaz,A9. A3. adıma geri dön,A10. "SAYIYI BULDUNUZ" yazA11. Dur.
E
AKIġ ġEMASI ALGORĠTMA
E
H
H
1.12 1ile 10 arsındaki tam sayıların çarpımını bulan algoritma ve akıĢ
http://alikoker.name.tr
16
Ģeması
B
I=1, CARPIM=1
CARPIM=CARPIM*1
I=10
I=I+1
CARPIM
DUR
E
H
A1. BaĢlaA2. I=1, CARPIM=1A3. CARPIM=CARPIM=1 AL,A4. EGER I=10 ĠSE A7. ADIAM GERĠ DÖN,A5. I=I+1 AL,A6. A3. adıma geri dön,A7. CARPIM yaz,A8. Dur.
AKIġ ġEMASI ALGORĠTMA
1.13 10 ile 100 arasındaki tam sayılardan asal sayı olanları bulan algoritma ve akıĢ Ģeması
http://alikoker.name.tr
17
A
I=11
TAM(I/2)*2=I
TAM(I/7)*7=I
I=100
TAM(I/5)*5=I
TAM(I/3)*3=I
I
I=I+1
DUR
A1. BASLA,A2. I=11 AL,A3. Eğer TAM(I/2)*2=I ĠSE A7. adıma git,A4. Eğer TAM(I/3)*3=I ĠSE A7. adıma git,A5. Eğer TAM(I/5)*5=I ĠSE A7. adıma git,A6. Eğer TAM(I/7)*7=I ĠSE A7. adıma git,A7. I değerini yaz,A8. Eğer I=99 ĠSE A9. adıma git,A9. I=I+2 AL VE A3. adıma geri dön,A10. Dur.
E
E
E
E
H
H
H
E
AKIġ ġEMASI ALGORĠTMA
H
H
http://alikoker.name.tr
18
1.14 Ard arda girilen rasgele 10 tam sayının ortalaması ile bu sayılardan en büyük ve en küçük olanının ortalamasını bularak elde edilen bu 2 ortalamanın farkını bulan algoritma ve akıĢ Ģeması
B
A
EK=AEB=A
TP=A
I=2
A
EK>A EK=A
EB<A
EB=A
TP=TP+A
I=10
I=I+1
B=(EB+EK)/2ORT=TP/10
FARK=ORT-B
FARK
DUR
A1. BAġLA,A2. A'yı gir,A3. EK=A al,A4. EB=A aL,A5. TP=A al,A6. I=2 aL,A7. A'yı gir,A8. Eğer EK>A ise EK=A al,A9 . Eğer EB<A ise EB=A al,A10. TP=TP+A al,A11. EğerI=10 ise A13.adıma git,A12. I=I+1 al ve A7. adıma geri dön,A13. B=(EB+EK)/2 al,A14. ORT=TP/10 al,A15. FARK'ı YAZ,A16. DUR.
H
E
H
E
E
H
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
19
1.15 Girirlen 4 haneli bir tam sayının yüzler hanesindeki sayı degerinin 3 ile bölümünden elde edilen kalanın aynı sayının birler hanesindeki deger ile farkını bulan algoritma ve akıĢ Ģeması
B
A
BIN=TAM(A/100)*1000
YUZ=A-BIN
DEGER=TAM(YUZ/100)
S=DEGER-TAM(DEGER/3)*3
BIRLER=A-TAM(A/10)*10
FARK=S-BIRLER
FARK
DUR
A1. BASLA,A2. A sayısını gir,A3. BIN=TAM(A/100)*1000,A4.. YUZ=A-BIN al,A5. DEGER=TAM(YUZ/100) al,A6. S=DEGER-TAM(DEGER/3)*3 al,A7. BIRLER=A-TAM(A/10)*10 al,A8. FARK=S-BIRLER al,A9. FARK yaz,A10. DUR.
AKIġ ġEMASI ALGORĠTMA
1.16 Tam kısmındaki degeri en fazla 4 haneli girilen bir rasyonel sayının tam kısmının 100’ler hanesindeki degeri çift ise bu degerin kübünün bir tamkare olup olmadıgını bulan algoritma
http://alikoker.name.tr
20
ve akıĢ Ģeması
B
A
E=TAM(A)
BIN=TAM(B/1000)*1000
YUZLER=B-BIN
YUZ=TAM(YUZLER/100)
YUZ=0
YUZ<>TAM(YUZ/2)*2
KUB=YUZ^3
C=TAM(KUB^(1/2))^2
C=KUB
TAMKARE DEĞĠL TAM KARE
DUR
E
H
H
E
H
A1. BASLA,A2. A sayısını gir,A3. E=TAM(A) al,A4. BIN=TAM(B/1000)*1000A5. YUZLER=B-BINA6. YUZ=TAM(YUZLER/100)A7. Eğer YUZ=0 ise A14. adıma gitA8. Eğer YUZ<>TAM(YUZ/2)*2 ise A14.adıma git,A9. KUB=YUZ^3 al,A10. C=TAM(KUB^(1/2))^2 al,A11. Eğer C=KUB iseA13.adıma git,A12. TAMKARE DEĞĠL yaz,A13. TAM KARE yazA14. DUR.
AKIġ ġEMASI ALGORĠTMA
E
1.17 ondalıklı kısmı iki haneli girilen pozitif bir rasyonel saının ondalıklı kısmının sayı degerinin bir tamkare olup olmadıgını bulan algoritma ve akıĢ Ģeması
http://alikoker.name.tr
21
B
A
B=A-TAM(A)
DEGER=B*100
SAYI=TAM (DEGER^(1/2)^2
SAYI=DEGER
BU SAYI TAMKARE DEGILDIR
BU SAYITAMKARE
DUR
E
A1. BASLA,A2. A sayısını gir,A3. B=A-TAM(A) al,A4. DEGER=B*100 al,A4. SAYI=TAM (DEGER^(1/2)^2 al,A6. EGER SAYI=DEGER ĠSE A8. adıma git,A7. "BU SAYI TAM KARE DEGILDIR" yaz A9. adıma git,A8. "BU SAYI TAM KARE" yaz,A9. DUR.
AKIġ ġEMASI ALGORĠTMA
H
1.18 ondalıklı kısmı 2 haneli girilien poziytif bir rasyonel sayının ondalıklı kısmının tam sayı degerinin en yakın tam kare sayıya
http://alikoker.name.tr
22
uzaklıgını bulan algoritma ve akıĢ Ģeması
B
A
B=A-TAM(A)
C=B*100
D=TAM(C^(1/2))
E=D+1
FARK1=MUTLAK(C-D^2)
FARK2=MUTLAK(C-E^2)
FARK1<FARK
2
YAKIN=E^2 YAKIN=D^2
YAKIN
DUR
E
H
A1. BaĢla,A2. A sayısını gir,A3. B=A-TAM(A) al,A4. C=B*100 al,A5. D=TAM(C^(1/2)) al,A6. E=D+1 al,A7. FARK1=MUTLAK(C-D^2) al,A8. FARK2=MUTLAK(C-E^2) al,A9. Eğer FARK1<FARK2 ise A11. adıma git,A10. YAKIN=E^2 al,A11. YAKIN=D^2 al,A12. YAKIN degerini yaz,A13. DUR.
AKIġ ġEMASI ALGORĠTMA
1.19 ondalıklı kısmı 3 haneli girilen pozitif bir rasyonel sayının tam kısmı ile ondalıklı kısmının tam sayı degerinin farkı pozitif ise bu degerin bir tam kare sayı olup olmadıgını bulan algoritma ve
http://alikoker.name.tr
23
akıĢ Ģeması
B
A
B=A-TAM(A)
C=B*1000
D=TAM(A)-C
D<0
TAM(D^(1/2))^2=D
BU TAMKARE DEĞĠLBU DEGERTAMKARE
DUR
A1. BaĢla,A2. A sayısını gir,A3. B=A-TAM(A) al,A4. C=B*1000 al,A5. D=TAM(A)-C al,A6. Eğer D<0 ise A10. adıma git,A7. Eger TAM(D^(1/2))^2=D ise A10. adıma git,A8. BU TAMKARE DEĞĠL yaz,A9. BU DEGER TAMKARE yaz,A10. Dur.
E
H
H
AKIġ ġEMASI ALGORĠTMA
H
http://alikoker.name.tr
24
1.20 Rasgele girilen bir rasyonel sayının ondalıklı kısmının ve tam kısmının hane sayısını bulan algoritma ve akıĢ Ģeması
BASLA
A
S1=1, S2=1
B=TAM(A)C=A-B
C=C*10
TAM(C)=C
S1=S1+1B=B/10
TAM(B)=0
S2=S1+1
S1, S2
DUR
H
A1. BaĢla,A2. A sayısını gir,A3. S1=1, S2=1 al,A4. B=TAM(A) al,A5. C=A-B al,A6. C=C*10 al,A7. Eğer T A M ( C ) = Cise A9. adıma git,A8. S1=S1+1 al, ve A6. adıma geri dön,A9. B=B/10 al,A10. Eğer T A M ( B ) = 0ise A12. adıma git,A11. S2=S1+1 al ve A9. adıma geri dön,A12. S1 ve S2'yi yaz,A13. Dur.
AKIġ ġEMASI ALGORĠTMA
H
E
E
http://alikoker.name.tr
25
1.21 Girilen bir tam sayının hanelerindeki en büyük sayıyı bulan algoritma ve akıĢ Ģeması
B
A
EB=0
B=A-TAM(A/10)*10
EB<B EB=B
A=0
EB
DUR
A=TAM(A/10)
E
E
H
H
A1. BaĢla,A2. A sayısını gir,A3. EB=0 al,A4. B=A-TAM(A/10)*10 al,A5. Eğer EB<B ise EB=B al,A6. Eğer A=0 ise A9. adıma git,A7. A=TAM(A/10) al,A8. A4. adıma git,A9. EB' yi yazA10. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
26
1.22 Girilen bir tam sayının hanelerindeki tekrar eden sayıları bulan algoritma ve akıĢ Ģeması
B
A
K=-1
B=A
K=K+1
S=0
C=A-TAM(A/10)*10
C=K S=S+1
A=0
A=TAM(A/10)
K, S
K=9
A=B
DUR
H
H
A1. BaĢla,A2. A sayısını gir,A3. K=-1 al,A4. B=A al,A5. K=K+1 al,A6. S=0 al,A7. C=A-TAM(A/10)*10 al,A8. Eğer C=K ise S=S+1 al,A9. Eğer A=0 ise A=TAM(A/10) al,A10. A=TAM(A/10) al ve A7. adıma geri dön,A11. K, S' yi yaz,A12. Eğer K=9 ise A14. adıma git,A13. A=B al ve A5. adıma geri dön,A14. Dur.
AKIġ ġEMASI ALGORĠTMA
E
E
http://alikoker.name.tr
27
1.23 Girirlen herhangi bir tam sayının hanelerine ayrılmasını saglayan algoritma ve akıĢ Ģeması
B
S=1
A
B=A
A=TAM(A/10)
A=O
S=S+1
A=B
C=TAM(A/(10^(S-1)))*(10^(S-1))
C
S=1
S=S-1A=A-C
DUR
A1. BaĢla,A2. S=1 al,A3. A sayısını gir,A4. B=A al,A5. A=TAM(A/10) al,A6. Eğer A=O ise A9. adıma git,A7. S=S+1 al,A8. A5. adıma geri dön,A9. A=B al,A10. C=TAM(A/(10^(S-1)))*(10^(S-1)) al,A11. C' yi yaz,A12. Eğer S=1 ise A13. adıma geri dön,A13. S=S-1, A=A-C al ve A8. adıma geri dön,A14. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
28
2 DĠZĠ KAVRAMI VE ÖRNEKLER
2.1 N elemanlı bir sayı dizisinin giriĢini yapan algoritma ve akıĢ Ģeması
N
i=1
A(i)
i=N
i=i+1
DUR
B
E
H
A1. BaĢla,A2. N sayısını gir,A3. i=1 al,A4. A(i)' yı gir,A5. Eğer i=N ise A7. adıma git,A6. i=i+1 al ve A4. adıma geri dön,A7. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
29
2.2 10 elemanlı bir sayı dizisinin elemanlarının toplamını bulan algoritma ve akıĢ Ģeması
B
i=1TOPLAM=0
A(i)
TOPLAM=TOPLAM+A(i)
i=10
i=i+1
TOPLAM
DUR
A1. BaĢla,A2. i=1, TOPLAM=0 al,A3. A(i)' yı yaz,A4. TOPLAM=TOPLAM+A(i) al,A5. Eğer i=10 ise A7. adıma git,A6. i=i+1 al ve A3. adıma geri dön,A7. TOPLAM' ı yaz,A8. Dur.
E
H
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
30
2.3 10 elemanlı bir sayı dizisinin en büyük elemanını bulan algoritma ve akıĢ Ģeması
B
i=1
A(i)
i=10
i=i+1
EB=A(1)
EB<A(i)
i=10
i=i+1
EB=A(i)
EB
DUR
i=2
E
H
E
H
E
A1. BaĢla,A2. i=1 al,A3. A(i)' yı gir,A4. Eğer i=10 ise A6. adıma git,A5. i=i+1 al ve A3. adıma geri dön,A6. EB=A(1) al,A7. Eğer EB<A(i) ise EB=A(i) al,A8. Eğer i=10 ise A10. adıma git,A9. i=i+1 al ve A7. adıma geri dön,A10. EB' yi yaz,A11. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
31
2.4 10 elemanlı bir sayı dizisinede negatif elemanların toplamını bulan algoritma ve akıĢ Ģeması
B
i=1TN=0
A(i)
A(i)<0
TN=TN+A(i)
i=10
i=i+1
TN
DUR
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. I=1, TN=0 al,A3. A(I)'yı gir,A4. Eger A(I)<0 ise TN=TN+A(I) al,A5. Eger I=10 ise A7. adıma git,A6. I=I+1 al ve A3. adıma geri dön,A7. TN'yi yaz,A8. Dur.
http://alikoker.name.tr
32
2.5 10 elemanlı bir sayı dizisinde negatif ve pozitif elemanların ayrı ayrı ortalamasını bulan algoritma ve akıĢ Ģeması
B
i=1, TP=0, TN=0N=0, P=0
A(i)
A(i)=0
A(i)<0
P=P+1TP=TP+A(i)
N=N+1TN=TN+A(i)
i=10
ORTP=TP/PORTN=TN/N
i=i+1
ORTP, ORTN
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. I=0,TP=0,TN=0,N=0,P=0,ORTP=0,ORTN=0 al,A3. A(I)'yı gir,A4. Eger A(I)=0 ise A7. adıma git,A5. Eger A(I)<0 ise TN=TN+A(I), N=N+1 alve A7.adıma git,A6. TP=TP+A(I), P=P+1 al,A7. Eger I=10 iseA9. adıma git,A8. I=I+1 al ve A3. adıma geri dön,A9. Eger P=0 ise A11.adıma git,A10. ORTP=TP/PA11. Eger N=0 ise A13. adıma git,A12. ORTN=TN/N al,A13. ORTP ve ORTN'yi yaz,A14. Dur.
http://alikoker.name.tr
33
2.6 istenildigi kadar elemandan oluĢan bir sayı dizisinde negatif ve pozitif elemanların sayısını bulan algoritma ve akıĢ Ģeması
B
i=1N=0, P=0
A(i)
A(i)=0
A(i<0)
P=P+1
N=N+1
C
C="H"
i=i+1
N, P
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. I=1, N=0, P=0 al,A3. A(I)'yı gir,A4. Eger A(I)=0 ise A7. adıma git,A5. Eger A(I)<0 ise N=N+1al ve A7. adıma git,A6. P=P+1 al,A7. C'yi gir{burada c tekrar sayı giriĢini kontrol eder}A8. Eger C="H" ise A10. adıma git,A9. I=I+1 al ve A3. adıma geri dön,A10. P'yi ve N'yi yaz,A11. Dur.
2.7 10 elemandan oluĢan bir A dizisinde negatif elemanların ayrı bir diziye, pozitif elemanların ayrı bir diziye yüklenmesini saglayan
http://alikoker.name.tr
34
algoritma ve akıĢ Ģeması
B
i=1, N=0, P=0
A(i)
A(i)=0
A(i)<0
P=P+1B(P)=A(i)
i=10
N=N+1C(N)=A(i)
i=i+1
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. I=1, N=0, P=0 al,A3. A(I)'yı gir,A4. Eger A(I)=0 ise A8. adıma git,A5. Eger A(I)<0 ise A7. adıma git,A6. P=P+1, B(P)=A(I) al ve A8. adıma git,A7. N=N+1, C(N)=A(I) al,A8. Eger I=10 ise A10. adıma git,A9. I=I+1 al ve A3. adıma geri dön,A10. Dur.
http://alikoker.name.tr
35
2.8 N elemandan oluĢan bir A sayı dizisinin küçükten büyüge dogru sıralanmasını yapan algoritma ve akıĢ Ģeması
B
i=1
A(i)
i=N
i=i+1
K=1, i=1
A(i)<A(i+1)
B=A(i), A(i)=A(i+1A(i+1)=B, K=0)
i=N-1
i=i+1
K=0
i=1
A(i)
i=N
i=i+1
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. I=1 alA3. A(I)'yı gir,A4. Eger I=N ise A6. adıma git,A5. I=I+1 al ve A3. adıma geri dön,A6. K=1, I=1 al,A7. Eger A(I)<A(I+1) ise A9. adıma git,A8. B=A(I), A(I)=A(I+1),A(I+1)=B , K=0 al,A9. Eger I=N-1 ise A11. adıma git,A10. I=I+1 al ve A7 adıma geri dön,A11. Eger K=0 ise A6. adıma geri dön,A12. I=1 al,A13. A(I)'yı yaz,A14. Eger I=N ise dur,A15. I=I+1 al ve A14. adıma geri dön,
http://alikoker.name.tr
36
2.9 N elemanlı bir sayı dizisinin küçükten büyüge dogru sıralanmasını saglayan algoritma ve akıĢ Ģeması
B
i=1
A(i)
i=N
i=i+1
K=1, i=1
A(i)<A(i+1)
B=A(i), A(i)=A(i+1)A(i+1)=B, K=0)
i=M
i=i+1M=M-1
K=0
i=1
A(i)
i=N
i=i+1
DUR
M=N-1
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. i=1 alA3. A(i)'yı gir,A4. Eger i=N ise A6. adıma git,A5. i=i+1 al ve A3. adıma geri dön,A6. M=N-1A7. K=1 al,A8. i=1 al,A9. Eger A(i)<A(i+1) ise A10. adıma git ,A10. B=A(i), A(i)=A(i+1), A(i+1)=B, K=0 al,A11. Eger i=M ise A12. adıma git,A12. i=i+1 ve M=M-1 al ve A8. adıma geri dön,A13. Eger K=0 ise A6. adıma geri dön,A14. i=1 al,A15. A(i)'yı yaz,A16. Eger i=N ise A17. adıma git,A17. i=i+1 al ve A14. adıma geri dön,A18. Dur.
2.10 Küçükten büyüge dogru sıralı bir Ģekilde girilen N elemanlı bir sayı dizisinde istenilen bir sayıya yarılama iĢlemleriyle
http://alikoker.name.tr
37
ulaĢmayı saglayan algoritma ve akıĢ Ģeması
B
i=1
A(i)
i=N
i=i+1
SAYI
E
B=1, S=N
ORT=TAM((B+S)/2)
A(ORT)=SAYI
S=B+1
A(ORT)<SAYI
DUR
B=ORT
S=ORT
BÖYLE BĠRSAYI YOK
A(ORT)
E
E
H
H
H
AKIġ ġEMASI ALGORĠTMA
H
E
A1. BaĢla,A2. I=1 al,A3. A(I)'yı gir,A4. Eger I=N ise A6. adıma git,A5. I=I+1 al ve A3. adıma geri dön,A6. Sayıyı gir,{SAYI degiĢkeni aranılan sayıyı belirtmektedir}A7. B=1 S=N+1 al,A8. ORT=TAM((B+S)/2) al,A9. Eger A(ORT)= SAYI ise A14. adıma git ,A10. Eger S=B+1 ise A15. adıma git,A11. Eger A(ORT)<SAYI ise A13. adıma git,A12. B=ORT al ve A8. adıma geri dön,A13. S=ORT al ve A8. adıma geri dön,A14. A(ORT) degerini yaz ve A16. adıma git,A15. "Böyle bir sayı yok " yaz,A16. Dur.
2.11 Rasgele 10 elemandan oluşan bir A sayı dizisinde negatif olan elemanların mutlak degerlerini alarak dizi elemanlarının
http://alikoker.name.tr
38
toplamını bulan algoritma ve akıĢ Ģeması
B
i=1, TOPLAM=0
A(i)
A(i)>=0
TOPLAM=TOPLAM+A(i)
TOPLAM=TOPLAM+A(i)
i=100
i=i+1
TOPLAM
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. I=1, TOPLAM=0 al,A3. A(I)'yı gir,A4. Eger A(I)>=0 ise A6. adıma git,A5. TOPLAM=TOPLAM+|A(I)| al ve A7. adıma gĠT,A6. TOPLAM=TOPLAM+A(I) al,A7. Eger I=10 iseA9. adıma gitA8. I=I+1 al ve A3. adıma git,A9. TOPLASM degerini yaz,A10. Dur.
2.12 Rasgele N elemandan oluĢan bir tam sayı dizisinde 3 ile tam bölünebilen sayıların baĢka bir diziye yüklenmesini saglayan
http://alikoker.name.tr
39
algoritma ve akıĢ Ģeması
B
N
i=, K=0
A(i)
TM=TAM(A(i)/3)*3
TM<>A(i)
K=K+1
C(K)=A(i)
i=N
i=i+1
i=1
C(i)
i=K
i=i+1DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yi gir,A3. I=1, K=0 al,A4. A(I)'yı gir,A5. TM=TAM(A(I)/3)*3 alA6. Eger TM<>A(I) ise A9.adıma git,A7. K=K+1 al,A8. C(K)=A(I) al,A9. Eger I=N ise A11. adıma git ,A10. I=I+1 al ve A4. adıma geri dön,A11. I=1 al,A12. C(I)'yı yaz,A13. Eger I=K ise A15. adıma git,A14. I=I+1 al ve A12.adıma geri dön,A15. Dur.
2.13 Ġstenilen bir deger verilinceye kadar girilen sayıları diziye yükleyerek aritmetik ortalamasını bulan algoritma ve akıĢ
http://alikoker.name.tr
40
Ģeması
B
i=0, TP=0
SAYI
SAYI=-99
i=i+1
A(i)=SAYI
K=1
TP=TP+A(K)
K=i
K=K+1
ORT=TP/i
ORT
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. i=0 ve TP=0 al,A3. SAYI yaz,A4. Eğer SAYI= -99 ise A7. adıma git,A5. i=i+1 al,A6. A(i)=SAYI al a3. adıma geri dön,A7. K=1 al,A8. TP=TP+A(K) al,A9. Eğer K=i ise A11. adıma geri dön,A10. K=K+1 al ve A8. adıma geri dön,A11. ORT=TP/i al,A12. ORT yaz,A13. Dur.
2.14 N elemandan meydana gelen ve küçükten büyüge dogru sıralanmıĢ bir sayı dizisinin büyükten küçüge dogru sıralanmasını degiĢtiren algoritma ve akıĢ Ģeması
http://alikoker.name.tr
41
B
N
i=1
A(i)
i=N
i=i+1i=1
N=M
B(i)=A(i)
i=M
i=i+1N=M-1
DUR
E
E
AKIġ ġEMASI ALGORĠTMA
H
H
A1. BaĢla,A2. N'yi gir,A3. I=1 al,A4. A(I)'yı gir,A5. Eger I=N ise A7. adıma git,A6. I=I+1 al ve A4. adıma geri dön,A7. I=1, M=N al,A8. B(I)=A(N) al,A9. Eger I=M ise A11. adıma git ,A10. I=I+1 N=N-1 al ve A8. adıma geri dön,A11. Dur.
,
http://alikoker.name.tr
42
2.15 N elemanlı bir tam sayı dizisinde tek ve çift elemanların sayısını bulan algoritma ve akıĢ Ģeması
B
N
i=1, T=0, C=0
A(i)
DEGER=TAM(A(i)/2)*2
DEGER=A(i)
T=T+1
i=N
i=i+1
T, C
DUR
C=C+1
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N degerini gir,A3. I=1, T=0, C=0 al,A4. A(I)'yı gir,A5. DEGER= TAM(A(I)/2)*2 al,A6. Eger DEGER= A(I) iseA8.adıma git,A7. T=T+1 al ve A). adıma git,A8. C=C+1 al,A9. Eger I=N ise A11. adıma git ,A10. I=I+1 al ve A4. adıma geri dön,A11. T ve C'yi yaz,A12. Dur.
2.16 10 elemanlı bir rasyonel sayı dizisinde negatif ve pozitif elemanların ayrı ayrı ortalamalarının mutlak degerleri
http://alikoker.name.tr
43
toplamının en yakın tam kare sayıya uzaklıgını bulan algoritmave akıĢ Ģeması
B
i=1
A(i)
A(i)=0
A(i)0
P=P+1TP=TP+A(i)
i=10
ORP=TP/PORN=TN/N
i=i+1
ORP=TP/PORN=TN/N
TOPLAM=MUTLAK(ORP+ORN)
K=TOPLAM^(1/2)
M=TAM(K)
P=(K-M)*10
P>5
YAKIN=M^2
YAKIN
DUR
YAKIN=(M+1)^2
E
E
E
E
H
H
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. i=1, P=0, N=0, TP=0, TN=0 al,A3. A(i)'yı yaz,A4. Eğer A(i)=0 ise A8. adıma git,A5. Eğer A(i)<0 ise A7. adıma git,,A6. P=P+1, TP=TP+A(i) al ve A8.adıma gitA7. N=N+1, TN=TN+A(i) al,A8. Eğer i010 ise A10. adıma git,A9. i=i+1 al ve A3. adıma geri dön ,A10. ORP=TP/P ve ORN=TN/N al ,A11. TOPLAM=ORP+MUTLAK(ORN) al,A12. K=TOPLAM^(1/2) al,A13. M=TAM(K) al,A14. P=(K-M)*10 al,A15. Eğer P> ise A17. adıma git,A16. YAKIN=M^2 al ve A18. adıma git,A17. YAKIN=(M+1)^2 al,A18. YAKIN'ı yaz,A19. Dur.
http://alikoker.name.tr
44
2.17 10 elemanlı bir sayı dizisinin ortalaması ile her bir elemanın farkını bir diziye yükleyerek bu dizideki negatif elemanların ortalamasını bulan algoritma ve akıĢ Ģeması
B
i=1, TP=0
A(i)
TP=TP+A(i)
i=10
i=i+1
ORT=TP/10
i=1, N=0, TN=0
B(i)=ORT-A(i)
B(i)>=0
N=N+1TN=TN+B(i)
i=10
i=i+1
ORTN=TN/N
ORTN
DUR
E
H
H
E
H
AKIġ ġEMASI ALGORĠTMA
E
A1. BaĢla,A2. i=1, TP=0 al,A3. A(i)'yı gir,A4. TP=TP + A(i) alA5. Eğer i=10 ise A7. adıma git,,A6. i=i+1 al ve A3. adıma geri dön,A7. ORT =TP/10 al,A8. i=1, N=0,TP=0 al,A9. B(i)= ORT- A(i) al,A10. Eger B(i)>= 0 ise A12. adıma git,A11. N=N+1, TN=TN+B(i) al,A12. Eger i=10 ise A14. adıma git,A13. i=i+1 alve A9. adıma geri dön,A14. ORTN=TN/N al,A15. ORTN'yi yaz,A16. Dur.
2.18 N elemanlı bir tamsayı dizisinin ortalaması ile bu dizide 3 ile tam bölünebilen sayıların farkının toplamının mutlak degerinin
http://alikoker.name.tr
45
tam kısmını bir tam kare olup olmadıgını araĢtıran algoritma ve akıĢ Ģeması
B
N
i=1, K=0, TP=0
A(i)
TP=TP+A(i)
TAM(A(i)/3)*3<>A(i)
K=K+1
B(K)=A(i)
i=N
i=i+1
ORT=TP/N
i=1, TOPLAM=0
TOPLAM=TOPLAM+MUTLAK(ORT-B(i))
i=K
i=i+1
SONUC=MUTLAK(TAM(TOPLAM))
M=TAM(SONUC^(1/2))^2
M= SONUC
BU SAYI TAM KAREDEGĠL
BU SAYITAMKARE
DUR
H
H
H
E
E
E
H
E
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yı gir,A3. i=1, K=0, TP=0 al,A4. A(i)'yı girA5. TP=TP + A(i) al,A6. Eger TAM(A(i)/3)*3<>A(i) ise A9.adıma git,A7. K=K+1 al ,A8. B(K)=A(i) al,A9. Eger i=N is eA11 . adıma git,A10. I=I+1 al ve A4. adıma geri dön,A11. ORT=TP/N al,A12. i=1, TOPLAM=0 al,A13. TOPLAM=TOPLAM+MUTLAK(ORT-B(Ġ)) al,A14. Eger i=K ise A16. adıma git,A15. i=i+1 al ve A13. adıma geri dön,A16. SONUÇ=MUTLAK(TAM(TOPLAM)) al,A17. M=TAM(SONUC^(1/2))^2 al,A18. Eger M=SONUC ise A20. adıma git,A19. "Bu sayı tam kare degil" yaz ve A21. adıma git,A20. "Bu sayı tam kare " yaz,A21. Dur.
3 MATRĠSLER VE MATRĠSLERE ĠLĠġKĠN ALGORĠTMA VE AKIġ ġEMALARI
http://alikoker.name.tr
46
3.1 NxN’lik bir matrisin elemanlarının giriĢini yapan algoritma ve akıĢ Ģeması
BAġLA
N
i=1
J=1
A(i,J)
J=N
J=i+1i=N
DUR
i=i+1
E
E
H
AKIġ ġEMASI ALGORĠTMA
H
A1. BaĢla,A2. N'yı gir,A3. i=1 ,A4. J=1 al,A5. A(i,J)'yi gir,A6. Eger J=N ise A8.adıma git,A7. J=J+1 al ve A5. adıma geri dön,A8. Eger i=N ise A10. adıma git,A9. i=i+1 al ve A4. adıma geri dön,A10. Dur.
http://alikoker.name.tr
47
3.2 NxN’lik bir matrisin esas köĢegeni üzerindeki elemanların toplamını bulan algoritma ve akıĢ Ģeması
B
N
i=1
J=1
A(i,J)
J=N
J=J+1
i=N
i=i+1
TOPLAM=0i=1
TOPLAM=TOPLAM+A(i, i)
i=N
TOPLAM
i=i+1
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yı gir,A3. i=1 ,A4. J=1 al,A5. A(i,J)'yi gir,A6. Eger J=N ise A8.adıma git,A7. J=J+1 al ve A5. adıma geri dön,A8. Eger i=N ise A10. adıma git,A9. i=i+1 al ve A4. adıma geri dön,A10. TOPLAM=0 ,i=1 al,A11. TOPLAM=TOPLAM+A(i,i) al,A12. Eger i=N ise A14. adıma geri dön,A13. i=i+1 al ve A11. adıma geri dön,A14. TOPLAM degerini yaz,A15. Dur.
http://alikoker.name.tr
48
3.3 0’dan farklı NxN’lik bir matrisin esas köĢegeni üzerindeki elemanlarını bir yapan algoritma ve akıĢ Ģeması
B
N
i=1
J=1
A(i, J)
J=N
J=J+1
i=N
i=i+1
i=1
J=1
B(i)=A(i, i)
A(i, J)=A(i,J)/B(i)
J=N
J=J+1
i=N
i=i+1 DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yı gir,A3. i=1 al,A4. J=1 al,A5. A(i,J)'yi gir,A6. Eger J=N ise A8.adıma git,A7. J=J+1 al ve A5. adıma geri dön,A8. Eger i=N ise A10. adıma git,A9. i=i+1 al ve A4. adıma geri dön,A10. i=1,A11. J=1A12. B(i)=A(i,i) al,A13. A(i,J)=A(i,J)/B(i) al,A14. Eger J=N ise A16. adıma geri dön,A15. J=J+1 al ve A13. adıma geri dön,A16. Eger i=N ise dur,A17. i=i+1 al ve A11. adıma geri dön,A18. Dur.
http://alikoker.name.tr
49
3.4 NxN’lik bir matriste negatif ve pozitif elemanların sayısını ve ortalamalarını bulan algoritma ve akıĢ Ģeması
B
N
i=1
J=1
A(i, J)
J=N
J=J+1
i=N
i=i+1
PZ=0, NG=0TP=0, TN=0
A(i, J)=0
A(i,J)<0
PZ=PZ+1TP=TP+A(i, J)
NG=NG+1TN=TN+A(i, J)
ORTP=TP/PZORTN=TN/NG
ORTP, ORTNPZ, NG
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yı gir,A3. PZ=0, NG=0, TP=0, TN=0 al,A4. i=1 al,A5. J=1 al,A6. A(i,J)'yi gir,A7. Eger A(i,J)=0 ise A11. adıma git,A8. Eger A(i,J)<0 ise A10. adıma git,A9. PZ=PZ+1, TP=TP+A(Ġ,J) al ve A11. adıma git,A10. NG=NG+1, TN=TN+A(i,J) al,A11. Eger J=N ise A13. adıma git,A12. J=J+1 al ve A6. adıma geri dön,A13. Eger i=N ise A15. adıma git,A14. i=i+1 al ve A5. adıma geri dön,A15. ORTP=TP/PZ, ORTN=TN/NG al,A16. ORTP, ORTN, PZ ve NG'yi yaz ve Dur.
http://alikoker.name.tr
50
3.5 NxM’lik bir matrisin en büyük elemanını bulan algoritma ve akıĢ Ģeması
B
N, M
i=1
J=1
A(i, J)
J=M
J=J+1
i=N
i=i+1
EB=A(i, i)
i=1
J=1
EB<A(i, J)
J=M
J=J+1
i=N
i=i+1
EB
DUR
EB=A(i, J)E
H
H
H
E
H E
AKIġ ġEMASI ALGORĠTMA
H
E
A1. BaĢla,A2. N ve M'yı gir,A3. i=1 al,A4. J=1 al,A5. A(i,J)'yi gir,A6. Eger J=M ise A8.adıma git,A7. J=J+1 al ve A5. adıma geri dön,A8. Eger i=N ise A10. adıma git,A9. i=i+1 al ve A4. adıma geri dön,A10. EB=A(1,1) al,A11. i=1,A12. J=1A13. Eğer EB<A(i,J) ise EB=A(i,J) al,A14. Eğer J=M ise A16. adıma git ,A15. J=J+1 al ve A13. adıma geri dön,A16. Eger i=N ise A18. adıma git,A17. i=i+1 al ve A12. adıma geri dön,A18. EB'yi yaz, ve Dur.
http://alikoker.name.tr
51
3.6 NxN’lik bir matrisin satır ve sütun toplamlarını ayrı ayrı bulan algoritma ve akıĢ Ģeması
B
N
i=1
J=1
A(i, J)
J=N
J=J+1
i=N
i=i+1
i=1
X(i)=0Y(i)=0
J=1
X(i)=X(i)+A(i, J)Y(i)=Y(i)+A(i, J)
J=N
J=J+1
i=i+1
i=N
K=1
X(K), Y(K)
K=N
K=K+1
DUR
E
H
E
H
H E
H
E
AKIġ ġEMASI ALGORĠTMA
E
A1. BaĢla,A2. N'yı gir,A3. i=1 al,A4. J=1 al,A5. A(i,J)'yi gir,A6. Eger J=N ise A8.adıma git,A7. J=J+1 al ve A5. adıma geri dön,A8. Eger i=N ise A10. adıma git,A9. i=i+1 al ve A4. adıma geri dön,A10. i=1 al,A11. X(i)=0, Y(i)=0 al,A12. J=1 al,A13. X(i) =X(i)+A(i,J) al,A14. Y(i)=Y(i)+A(iJ) al,A15. Eger J=N ise A17. adıma geri dön,A16. J=J+1 al ve A13. adıma geri dön,A17. Eger i=N ise A19. adıma git,A18. i=i+1 al ve A11. adıma geri dön,A19. K=1 al,A20. X(K) ve Y(K)'yı yaz,A21. Eğer K=N ise A23. adıma git,A22. K=K+1 al ve A20. adıma geri dön,A23. Dur.
http://alikoker.name.tr
52
3.7 0Elemanter satır iĢlemleri yardımıyla NxN’ter satır iĢlemleri yardımıyla NxN’lik bir matrisin esas köĢegeni üzerindeki elemanlarının bir ve esas köĢegeninin dıĢında kalan elemanlarını 0 yapan algoritma ve akıĢ Ģeması
BAġLA
N
i=1
J=1
A(i,J)
J=N
J=J+1i=N
i=i+1
E
E
H i=1
B(i)=A(i, i)
J=1
A(i, J)=A(i, J)/B(i)
J=N
J=J+1
i=N
J=i+1
K=1
A(K, J)=A(K, J)-A(K, J)*A(K, i)
K=N
DUR
K=K+1
J=N
J=J+1
i=i+1
E
H
E E
H H
E
H
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yı gir,A3. i=1 al,A4. J=1 al,A5. A(i,J)'yi gir,A6. Eger J=N ise A8.adıma git,A7. J=J+1 al ve A5. adıma geri dön,A8. Eger i=N ise A10. adıma git,A9. i=i+1 al ve A4. adıma geri dön,A10. i=1,A11. B(i)=A(i,i) al,A12. J=1 al,A13. A(i,J)=A(i,J)/B(i) al,A14. Eger J=N ise A16. adıma geri dön,A15. J=J+1 al ve A13. adıma geri dön,A16. Eger i=N ise A25. adıma git,A17. J=J+1 al,A18. K=1 al,A19. A(K,J)=A(K,J)-A(K,J) * A(K,i) al,A20. Eger K=N ise A22. adıma git,A21. K=K+1 al ve A19. adıma geri dön,A22. Eger J=N ise A24. adıma git,A23. J=J+1 al ve A18. adıma geri dön,A24. i=i+1 al ve A11. adıma geri dön,A25. Dur.
http://alikoker.name.tr
53
3.8 NxN’lik bir matrisin transpozesinin bulunmasını saglayan algoritma ve akıĢ Ģeması
BAġLA
N, M
i=1
J=1
A(i,J)
J=N
J=J+1i=N
DUR
i=i+1
E
E
H
B(J, i)=A(i, J)
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. M ve N'yı gir,A3. i=1 al,A4. J=1 al,A5. A(i,J)'yi gir,A6. B(J,i)=A(i,J) al,A7. Eger J=N ise A9.adıma git,A8. J=J+1 al ve A5. adıma geri dön,A9. Eger i=N ise A11. adıma git,A10. i=i+1 al ve A4. adıma geri dön,A11. Dur.
http://alikoker.name.tr
54
3.9 Girilen 2 matrisin ortalamasını bulan algoritma ve akıĢ Ģeması
BAġLA
N, M
i=1
J=1
A(i,J), B(i, J)
J=M
J=J+1i=N
DUR
i=i+1
E
E
H
T=(i, J)=B(i, J)+A(i, J)
AKIġ ġEMASI ALGORĠTMA
H
A1. BaĢla,A2. M ve N'yı gir,A3. i=1 al,A4. J=1 al,A5. A(i,J)'yi gir,A6. B(J,i)'yi gir,A7. T(J,i)=A(i,J)+B(i,J) al,A8. Eger J=M ise A10.adıma git,A9. J=J+1 al ve A5. adıma geri dön,A10. Eger i=N ise A12. adıma git,A11. i=i+1 al ve A4. adıma geri dön,A12. Dur.
http://alikoker.name.tr
55
3.10 Rasgele elmanlardan oluĢan NxN’lik bir matrisin tek ve çift elemanlarının sayısını bulan algoritma ve akıĢ Ģeması
BAġLA
N
i=1
J=1
A(i,J)
J=N
J=J+1 i=N
DURi=i+1
E
T=0, C=0
B=TAM(A(i, J)/2)*2
B=A(i, J)
T=T+1
C=C+1
T, C
H
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yı gir,A3. T=0, C=0 al,A4. i=1 al,A5. J=1 al,A6. A(i,J)'yi gir,A7. B=TAM(A(i,J)/2)*2 al,A8. Eger B=A(i,J) ise A10. adıma git,A9. T=T+1 al ve A11. adıma git,A10. C=C+1 al,A11. Eger J=N ise A13.adıma git,A12. J=J+1 al ve A6. adıma geri dön,A13. Eger i=N ise A15. adıma git,A14. i=i+1 al ve A5. adıma geri dön,A15. T ve C'yi yaz,A16. Dur.
http://alikoker.name.tr
56
3.11 N tam kare bir sayı olmak üzere N elemandan meydana gelen bir A dizisinin kare matris Ģekline dönüĢtürülmesini saglayan algoritma ve akıĢ Ģeması
BAġLA
N
i=1
J=1
A(i)
i=N
i=i+1
J=M
DURJ=J+1
M=N^(1/2)
i=1, K=0
K=K+1
B(i,J)=A(K)
I=M
i=i+1
E
H
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yı gir,A3. i=1 al,A4. A(i)'yi gir,A5. Eger i=N ise A7. adıma git,A6. i=i+1 al ve A4. adıma git,A7. M=N^(1/2) al,A8. i=1 ve K=0 al,A9. J=1 al,A10. K=K+1 al,A11. B(i,J)=A(K) al,A12. Eger J=M ise A14.adıma git,A13. J=J+1 al ve A11. adıma geri dön,A14. Eger i=M ise A16.adıma git,A15. i=i+1 al ve A9. adıma geri dön,A16. Dur.
http://alikoker.name.tr
57
3.12 NxN’lik bir A matrisinin simetrik olup olmadıgını araĢtıran algoritma ve akıĢ Ģeması
BAġLA
i=1
J=1
J=N
J=J+1i=N
DUR
i=i+1
E
E
H
F=A(i, J)-A(J, i)
F<>0A MATRĠSĠ
SĠMETRĠK DEGĠLDĠR
A MATRĠSĠSĠMETRĠKTĠR
E
H
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. i=1 al,A3. J=1 al,A4. F=A(i,J)-A(J,i) al,A5. Eger F<>0 ise A12. adıma git,A6. Eger J=N ise A8.adıma git,A7. J=J+1 al ve A4. adıma geri dön,A8. Eger i=N ise A10. adıma git,A9. i=i+1 al ve A3. adıma geri dön,A10. A matrisi simetriktir yaz,A11. A13. adıma git,A12. A matrisi simetrik degildir yaz,A13. Dur.
http://alikoker.name.tr
58
3.13 NxM ve MxK’lık iki matrisin çarpımını bulan algoritma ve akıĢ Ģeması
BAġLA
i=1
J=1
L=M
L=L+1 i=N
DUR
i=i+1
C(i, J)=0
L=1
C(i, J)=C(i, J)+A(i, L)*B(L, J)
J=K
J=J+1
i=1
J=1
C(i, J)
J=L
J=J+1i=N
i=i+1
E
H
E
H
E
H
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. i=1 al,A3. J=1 al,A4. C(i,J)=0 al,A5. L=1 al,A6. C(i,J)=C(i,J)+A(i,L)*B(L,J) al,A7. Eger L=M ise A9. adıma git,A8. L=L+1 al ve A6. adıma geri dön,A9. Eger J=K ise A11. adıma git,A10. J=J+1 al ve A4. adıma geri dön,A11. Eger i=N ise A13. adıma git,A12. i=i+1 al ve A3. adıma geri dön,A13. Ġ=1 al,A14. J=1 al,A15. C(i,J)'yi yaz,A16. Eger J=L ise A18. adıma git,A17. J=J+1 al ve A15. adıma geri dön,A18. Eger i=N ise A20. adıma git,A19. i=i+1 al ve A14. adıma git,A20. Dur.
http://alikoker.name.tr
59
3.14 NxN’lik bir kare matrisin tersinin bulunmasını saglayan algoritma ve akıĢ Ģeması
BAġLA
N
i=1
J=1
X1(i,J)
J=N
J=J+1
i=N
i=i+1
X(i, J)=0
i=1
i=N
X(i,J)=1
J=M
J=J+1
i=i+1
X(i,J)=X1(i,J)
M=N*2
N1=N+1
E
HE
H
J1=J-i
J=N1
J1-N<0
J1-N=0
E
H
E
H
E
H
H
K=1K1=K+1
K3=K+N-1
X(K,K)<>0
i1=K+1
X(i1,K)<>0
i1=i1+1
J=1
X(K, J)=X(K,J)+X(i1, J)
J=M
J=J+1
J=1
X(K+N,J)=X(K,J)/X(K,K)
J=M
J=J+1
E
H
E
H
E
H
i=K1
T=X(i, K)
J=1
J=M
J=J+1
X(i, J)=X(i, J)-X(K+N, J)*T
i=K3
i=i+1
i=1
J=1
J=N
J=J+1
i=N
i=i+1
X(i,J)
DUR
E
H E
H
E
H
AKIġ ġEMASI ALGORĠTMA
E
A1. BaĢla,A2. N' yi gir,A3. i=1 al,A4. J=1 al,A5. X(i,J)' yi gir,A7. Eğer J=N ise A9. adıma git,A8. J=J+1 al ve A5. adıma geri dön,A9. Eğer i=N ise A11. adıma git,A10. i=i+1 al ve A4. adıma geri dön,A11. M=N*2 al,A12. N1=N+1 al,A13. i=1 al,A14. J=N1 al,A15. J1=J-i al,A16. Eğer J1-N<0 ise X(Ġ, J)=0 al,A17. Eger j-n=0 ise X(i,J) =0 al,A18. Eger J=M ise A20. adıma git,A19. J=J+1 al ve A15. adıma geri dön,A20. Eger i=N ise A22. adıma git,A21. i=i+1 al ve A14. adıma geri dön,A22. K=1 al,A23. K1=K+1 al,A24. K3=K+N-1 al,A25. Eger X=(K,K)<>0 ise A30. adıma git,A26. i1=k+1 al,A27. Eger X(i1,K)<>0 ise A34. adıma git,A28. i1=i1+1 al,A29. A25. adıma ger dön,A30. J=1 al,A31. X(K,J)=X(K,J)+X(i1,J) al,A32. Eger J=M ise A34. adıma git,A33. J=J+1 al ve A31. adıma geri dön,A34. J=1 al,A35. X(K+N,J)=X(K,J)+X(K,K) al,A36. Eger J=M ise A38. adıma git,A37. J=J+1 al ve A35. adıma ger dön,A38. i=K1 al,A39. T=X(i,K) al,A40. J=1 al,A41. X(i,J)=X(i,J)-X(K+N,J)*T al,A42. Eger J=M ise A44. git,A43. J=J+1 al ve A41. adıma geri dön,A44. Eger i=K3 ise A46. adıma git,A45. i=i+1 al ve A39. adıma geri dön,A46. i=1 al,A47. J=1 al,A48. X(i,J)'yi yaz,A49. Eger J=N ise A51. adıma git,A50. K=J+1 al ve A48. adıma geri dön,A51. Eger i=N ise Dur.A52. i=i+1 al ve A47. adıma geri dön,
http://alikoker.name.tr
60
3.15 NxN’lik bir tam sayı matrisinin esas köĢegeni ile yedek köĢegeni üzerindeki elemanlarının toplamının bir tam kare sayı olup olmadıgını araĢtıran algoritma ve akıĢ Ģeması
B
i=1
J=1
A(i,J)
J=N
J=J+1
i=N
i=i+1TP=0i=1
TP=TP+A(i, i)+A(i, N+1-i)
i=N
i=i+1B=TAM(TP^(1/2)^2)
B=TP
TAMKARE
TAM KAREDEGĠL
DUR
E
H
E
H
E
H H
E
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. i=1 al,A3. J=1 al,A4. A(i,J)yi gir,A5. Eger J=N ise A7. adıma git,A6. J=J+1 al ve A4. adıma geri dön,A7. Eger i=N ise A9. adıma git,A8. i=i+1 al ve A3. adıma geri dön,A9. i=1, TP=0 al,A10. TP=TP+A(i,i)+A(i,N+1-i) al,A11. Eger i=N ise A13. adıma gitA12. i=i+1 al ve A10. adıma geri dön,,A13. B=TAM(TP^(1/2))^2 al,A14. Eger B=TPise A16. adıma git,A15. "Tamkare degil" yaz ve A17. adıma git,A16. "Tamkare" yaz,A17. Dur.
3.16 NxN’lik bir sayı matrisinin esas köĢegeni ile yedek köĢegeni üzerindeki karĢılıklı elemanların çarpımlarını bir diziye
http://alikoker.name.tr
61
yükleyerek bu dizinin en büyük elemanını bulan algoritma ve akıĢ Ģeması
B
i=1
J=1
A(i,J)
J=N
J=J+1
i=N
i=i+1
i=1
B(i)=A(i, i)+A(i, N+1-i)
i=N
i=i+1
E
H
E
H H
EB=B(i)
i=2
EB<B(i)
i=N
i=i+1
EB=B(i)
EB
DUR
E
E
H
H
E
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. i=1 al,A3. J=1 al,A4. A(i,J)yi gir,A5. Eger J=N ise A7. adıma git,A6. J=J+1 al ve A4. adıma geri dön,A7. Eger i=N ise A9. adıma git,A8. i=i+1 al ve A3. adıma geri dön,A9. i=1 al,A10. B(i)=A(i,i)*A(i,N+1-i) al,A11. Eger i=N ise A13. adıma gitA12. i=i+1 al ve A10. adıma geri dön,,A13. EB,=B(1) al,A14. i=2 al,A15. Eger EB<B(i) ise EB=B(i) al,A16. Eger i=N ise A18. adıma git,A17. i=i+1 al ve A15. adıma git,A18. EB'yi yaz,A19. Dur.
3.17 NxN’lik bir sayı matrisinin her satırının en büyük elemanları ile her sütununun en küçük elemanlarının karĢılıklı toplamlarının
http://alikoker.name.tr
62
bir tam kare sayı olup olmadıgını araĢtıran algoritma ve akıĢ Ģeması
B
i=1
J=1
A(i,J)
J=N
J=J+1
i=N
i=i+1
i=N
i=i+1
i=1, TP=0
EB=A(1,i)EK=A(i, 1)
J=1
EB<A(i,J)
J=N
J=J+1
EB=A(i, J)
EK=A(J, i)EK>A(J, i)
TP=TP+EB+EK
TP=TAM(TP^(1/2))^2
TAM KAREDEGĠL
DUR
TAMKARE
E
H
E
H
E
H
E
H
E
H
E
HE
H
A1. BaĢla,A2. i=1 al,A3. J=1 al,A4. A(i,J)yi gir,A5. Eger J=N ise A7. adıma git,A6. J=J+1 al ve A4. adıma geri dön,A7. Eger i=N ise A9. adıma git,A8. i=i+1 al ve A3. adıma geri dön,A9. i=1 ve TP=0 al,A10. EB=A(1,i) VE EK=A(i,1) al,A11. J=1 al,A12. Eger EB<A(i,J) ise EB=A(i,J) al,A13. Eger EK>A(J,i) ise EK=A(J,i) al,A14. Eger J=N ise A16. adıma git,A15. J=J+1 al ve A12. adıma geri dön,A16. TP=TP+EB+EK al,A17. Eger i=N ise A19. adıma git,A18. i=i+1 al ve A10. adıma geri dön,A19. Eger TP=TAM(TP^(1/2))^2 ĠSE A21. adıma git,A20. "Tamkare degil " yaz ve A22. adıma git,A21. "Tamkare " yaz,A22. Dur.
AKIġ ġEMASI ALGORĠTMA
3.18 NxN’lik bir sayı matrisinin her bir satırının ayrı ayrı ortalamaları ile matrisin transpozunun her bir satırının ayrı ayrı
http://alikoker.name.tr
63
ortalamalarından karĢılıklı olarak eĢit olanların sayısını bulan algoritma ve akıĢ Ģeması
B
N
i=1
J=1
A(i,J)
J=N
J=J+1
i=N
i=i+1
E
H
i=1
TP1=0,TP2=0
*
J=1
SAYAC=0
TP1=TP1+A(i, J)TP2=TP2+A(J, Ġ)
J=N
J=J+1
ORT1=TP1/NORT2=TP2/N
ORT1=ORT2
i=N
i=i+1
*
SAYAC=SAYAC+1
SAYAC
DUR
E
H
E
H
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N'yi gir,A3. Sayac=0 al,A4. i=1 al,A5. J=1 al,A6. A(i,J)yi gir,A7. Eger J=N ise A9. adıma git,A8. J=J+1 al ve A6. adıma geri dön,A9. Eger i=N ise A11. adıma git,A10. i=i+1 al ve A5. adıma geri dön,A11. i=1 al,A12. TP1=0, TP2=0 al,A13. J=1 al,A14. TP1=TP1+A(i,J) al,A15. TP2=TP2+A(J,i) al,A16. Eger J=N ise A18. adıma git,A17. J=J+1 al ve A14. adıma geri dön,A18. ORT1=TP1/N al,A19. ORT2=TP2/N al,A20. Eger ORT1=ORT2 ise SAYAC=SAYAC+1 al,A21. Eger i=N ise A23. adıma git,A22. i=i+1 al ve A12. adıma geri dön,A23. SAYAC'I yaz ve A22. adıma git,A24. Dur.
http://alikoker.name.tr
64
3.19 N bilinmeyenli N denklemden meydana gelen lineer denklem sisteminin çözümünü bulan algoritma ve akıĢ Ģeması
A, B
i=1
J=1
D(i,J)
J=B
J=J+1
i=A
i=i+1
B
M=0, L=0S=1,P=0
T=1
G=D(T, T)
E
H E
H
i=1
i=B
i=i+1
D(T, i)=D(T, i)/G
M=M+1, S=S+1P=P+1, L=L+1
K=S
C=D(K, M)
J=P
D(K, J)=D(L, J)*C-D(K, J)
J=B
J=J+1
K=A
J=J+1
K=K+1
E
H
E
H
E
A
T=A-1
T=T+1
T=AG=D(T, T)
i=1
i=B
i=i+1
D(T, i)=D(T, i)/G
TP=0
K=1
J=K+1
K=K-1
X(A)=D(A, B)
K=A-1
TP=TP+D(K, J)*X(J)
J=A
J=J+1
X(K)=D(K, B)-TP
i=1
X(i)
i=A
i=i+1
DUR
E
H
E
H
E
H
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. A, B' yi gir,A3. i=1 al,A4. J=1 al,A5. D(i,J)' yi gir,A6. Eğer J=B ise A8. adıma git,A7. J=J+1 al ve A5. adıma geri dön,A8. Eğer i=A ise A10. adıma git,A9. i=i+1 al ve A4. adıma geri dön,A10. M=0, L=0, S=1 ve P=0 al,A11. T=1 al,A12. G=D(T,T) al,A13. i=1 al,A14. D(T,i)=D(T,i)/G al,A15. Eger i=B ise A17.adıma git,A16. i=i+1 al ve A14. adıma git,A17. M=M+1, S=S+1, P=P+1, VE L=L+1 al,A18. K=S al,A19. C=D(K,M) al,A20. J=P al,A21. D(K,J)=D(L,J)*C-D(K,J) al,A22. Eger J=B ise A24. adıma git,A23. J=J+1 al ve A21. adıma geri dön,A24. Eger K=A is eA26. adıma git,A25. K=K+1 al ve A19. adıma geri dön,A26. Eger T=A-1 ise A28. adıma git,A27. T=T+1 al ve A12. adıma geri dön,A28. T=A, G=D(T,T) al,A29. i=1 al,A30. D(T,i)=D(T,i)/G al,A31. Eger i=B ise A33. adıma git,A32. i=i+1 al ve A30. adıma geri dön,A33. X(A)=D(A,B) al,A34. K=A-1 al,A35. J=K+1 al,A36. TP=TP+D(K,J)*X(J) al,A37. Eger J=A ise A39. adıma git,A38. J=J+1 al ve A36. adıma ger dön,A39. X(K)=D(K,B)-TP al,A40. TP=0 al,A41. Eger K=1 ise A43. git,A42. K=K-1al ve A. adıma geri dön,A43. i=1 al,A44. X(i)'yi yaz,A45. Eger i=a ise A47 adıma git,A46. i=i+1 ve A44. adıma geri dön,A47. Dur.
http://alikoker.name.tr
65
4 SIRASAL ERĠġĠMLĠ DOSYALARA ĠLġKĠN ALGORĠTMA VE AKIġ ġEMALARI
4.1 Sırasal eriĢimli bir dosyaya çalıĢanlara ait ad_soyad, sicil no ve maaĢ bilgilerini kaydeden algoritma ve akıĢ Ģeması
B
DOSYAYI TANIMLA
A, S, M
A, S, M
TEKRARKATYIT
YAPILACAK MI
DOSYAYIKAPAT
DUR
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı tanımla,A3. A'yi gir {adı soyadı},A4. S'yi gir {sicil numarası},A5. M'yi gir {maaĢ},A6. A,S ve M'yi dosyaya yaz,A7. Tekrar kayıt yapılacakmı?{E yada H},A8. Eger 'E' ise A3.adıma geri dön,A9. Dosyayı kapat ve Dur.
4.2 Yukarıdaki örnekte verilen dosyadan bilgileri okuyarak ekrana yazdıran algoritma ve akıĢ Ģeması
B
DOSYAYI AÇ
DOSYAYIKAPAT
DUR
DOSYASONUMU
A, S, M
A, S, M
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. Eger dosya sonu ise A7. adıma git,A4. A,S ve M'yi dosyadan oku,A5. A,S ve M'yi ekrana yaz,A6. A3.adıma geri dön,A7. Dosyayı kapat ve Dur.
http://alikoker.name.tr
66
4.3 Bir dosyada ögrencilerin adı-soyadı, numarası ve bilgisayar dersinden almıĢ oldukları vize ve final notları kayıtlıdır. Bu dosyayı okutarak baĢarılı olan ögrencilerin ekrana yazdırılmasını saglayan algoritma ve akıĢ Ģeması
B
DOSYAYI AÇ
DOSYAYIKAPAT
DUR
DOSYASONUMU
A, N, V,F
A, N, V, F, B
V<50
B=V*0.4+F*0.6
B<50
E
H
E
E
H
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. Eger dosya sonu ise A9. adıma git,A4. A,N,V ve F'yi dosyadan oku,A5. Eger F<50 ise A3. adıma geri dön,A6. B=V*0,4 + F*0,6 al,A7. Eger B<50 ise A3. adıma geri dön,A8. A,N,V,F ve B'yi ekrana yaz,A9. Dosyayı kapat,A10. Dur.
4.4 3. örnekte verilen ve ögrencilerin notlarına iliĢkin bilgileri taĢıyan sırasal eriĢimli dosyadan istenilen bir kaydın
http://alikoker.name.tr
67
silinmesini saglayan algoritma ve akıĢ Ģeması
B
ANA DOSYAYI AC
GECICI DOSYA TANIMLA
NO
DOSYASONUMU
A, N, V, F
NO=N
GECICI DOSYAYAA, N, V, F
E
H
DOSYALARI KAPAT
ANA DOSYAYI SIL
GECICI DOSYANINADINI ANA DOSYAOLARAK DEGISTIR
DUR
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Ana dosyayı aç,A3. Geçici dosyayı tanımla,A4. NO'yu gir {Silinecek dosyanın numarası},A5. Eger ana dosyanın sonu ise A10. adıma git,A6. A,N,V ve F'yi ana dosyadan oku,A7. Eger N0=N ise A5. adıma geri dönA8. A,N,V veF'yi geçici dosyaya yaz,A9. A5. adıma geri dön,A10. Ana dosyayı ve geçici dosyayı kapat,A11. Ana dosyayı sil,A12. Geçici dosyanın adını, ana dosyanın adı olarak tanımla ve dur,
4.5 Ögrencilerin adı-soyadı, numarası ve bilgisayar dersinden almıĢ oldukları baĢarı notunun kayıtlı oldugu bir sırasal eriĢimli dosyadan, numarasına göre istenilen bir ögrenciye ulaĢılarak bu ögrenciye ait bilgilerden istenilenlerin degiĢtirilmesini
http://alikoker.name.tr
68
saglayan algoritma ve akıĢ Ģeması
B
ANA DOSYAYI AC
GECICI DOSYA TANIMLA
NO
DOSYASONUMU
A, N, B
NO=N
GECICI DOSYAYAA, N, B
H
DOSYALARI KAPAT
ANA DOSYAYI SIL
GECICI DOSYANINADINI ANA DOSYAOLARAK DEGISTIR
DUR
E
H
1. Adı Soyadı2. Numarası
3. Basarı notu 4. Geri dönüĢ
SC
SC=1
SC=2
SC=4
SC=3
A
N
B
E
H
E
E
E
H
H
H
E
AKIġ ġEMASI ALGORĠTMAA1. BaĢla,A2. Ana dosyayı aç,A3. Geçici dosyayı tanımla,A4. NO'yu gir {Aranan ögrencinin numarası},A5. Eger ana dosyanın sonu ise A10. adıma git,A6. A,N ve B'yi ana dosyadan oku,A7. Eger N0=N ise A10. adıma git,A8. A,N ve B'yi geçici dosyaya yaz,A9. A5. adıma geri dön,A10. "1-Adı soyadı, 2-Numarası, 3-baĢarı notu, 4-ÇıkıĢ" yaz,A11. "seçiminiz nedir diye sor"A12. SC'yi gir,{burada SC degeri 1,2,3 yada 4 olacaktır},A13. Eger SC=1 ise A'yı gir,A14. Eger SC=2 ise N'yı gir,A15. Eger SC=3 ise B'yı gir,A16. Eger SC=4 ise A8. adıma geri dön,A17. A5. adıma geri dön,A18. Ana dosyayı ve geçici dosyayı kapat,A19. Ana dosyayı sil,A20. Geçici dosyanın adını, ana dosyanın adı olarak tanımla,A21. Dur.
4.6 ÇalıĢanlara ait ism, sicil numarası ve maaĢ bilgilerinin kayıtlı oldugu bir sırasal eriĢimli bir dosyadanbu bilgilerin okutularak isimlerine göre alfabetik olarak sıralanmasını saglayan
http://alikoker.name.tr
69
algoritma ve akıĢ Ģeması
B
DOSYAYI AC
i=0
K=1
K=0
L=i-1
L=L+1
i=i+1
DOSYASONU
A, S, M
ISIM(I)=ASICIL(I)=S
MAAS(I)=M
L=1
ISIM(L)>=ISIM(L+1)
D=ISIM(L)ISIM(L)=ISIM(L+1)
ISIM(L+1)=D
K=0
E
H
E
H
E
E
H
HL=1
ISIM(L)SICIL(L)MAAS(L)
L=1
L=L+1
DOSYAYI KAPAT
DUR
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. i=0 al,A4. Eger ana doyanın sonu ise A9. adıma git,A5. A,S ve M'yi ana dosyadan oku,A6. i=i+1 al,A7. iSiM(i)=A, SiCiL(i)=S ve MAAġ(i)=M al,A8. A3. adıma geri dön,A9. K=1 al,A10. L=1 al,A11. Eger iSiM(L)>=iSiM(L+1) ise A16. adıma git,A12. D=iSiM(L), iSiM(L)=iSiM(L+1), iSiM(L+1)=D al,A13. E=SiCiL(L), SiCiL(L)=SiCiL(L+1), SiCiL(L+1)=E al,A14. F=MAAġ(L), MAAġ(L)=MAAġ(L+1), MAAġ(L+1)=F al,A15. K=0 al,A16. Eger L=i-1 ise A18. adıma git,A17. L=L+1 al ve A11. adıma geri dön,A18. Eger K=0 ise A9. adıma geri dön,A19. L=1 al,A20. iSiM(L), SiCiL(L), MAAġ(L)'yi yaz,A21. Eger L=i ise A23. adıma git,A22. L=L+1 al ve A20. adıma geri dön,A23. Dosyayı kapat,A24. Dur.
4.7 Bir öndeki örnekte tanımlanan dosyadan isim referans alınarak yarılama metodu ile istenilen bir kayda ulaĢmayı saglayan
http://alikoker.name.tr
70
algoritma ve akıĢ Ģeması
B
DOSYAYI AC
i=0
i=i+1
DOSYA
SONUMU
A, S, M
ISIM(I)=A
SICIL(I)=S
MAAS(I)=M
E
HK=1
K=0
L=i-1
L=L+1
L=1
ISIM(L)>=ISIM(L+
1)
D=ISIM(L)
ISIM(L)=ISIM(L+1)
ISIM(L+1)=D
K=0
E
H
E
H
H
E
ISIM
BS=1, BT=i
ORT=TAM((BS+BT)/2)
ISIM(ORT)=ISM
ISIM(ORT)<ISM
BT=ORT
BS=ORT
ISIM(ORT)
SICIL(ORT)
MAAS(ORT)
DOSYAYI KAPAT
DUR
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. i=0 al,A4. Eger ana dosyanın sonu ise A9. adıma git,A5. A,S ve M'yi ana dosyadan oku,A6. i=i+1 al,A7. iSiM(i)=A, SiCiL(i)=S ve MAAġ(i)=M al,A8. A3. adıma geri dön,A9. K=1 al,A10. L=1 al,A11. Eger iSiM(L)>=iSiM(L+1) ise A16. adıma git,A12. D=iSiM(L), iSiM(L)=iSiM(L+1), iSiM(L+1)=D al,A13. E=SiCiL(L), SiCiL(L)=SiCiL(L+1), SiCiL(L+1)=E al,A14. F=MAAġ(L), MAAġ(L)=MAAġ(L+1), MAAġ(L+1)=F al,A15. K=0 al,A16. Eger L=i-1 ise A18. adıma git,A17. L=L+1 al ve A11. adıma geri dön,A18. Eger K=0 ise A9. adıma geri dön,A19. iSM'yi gir, {aranan kiĢinin ismi}A20. BS=1, BT=i al,A21. ORT=TAM((BS+BT)/2) al,A22. Eger iSiM(ORT)=iSM al ve A26. adıma git,A23. Eger iSiM(ORT)<iSM al ve A25. adıma git,A24. BT=ORT al ve A21. adıma geri dön,A25. BS=ORT al ve A21. adıma geri dön,A26. iSiM(ORT), SiCiL(ORT), MAAġ(ORT) bilgilerini yaz,A27. Dosyayı kapat,A28. Dur.
4.8 Ögrencilerin adı-soyadı, numarası ve bilgisayar dersinden almıĢ oldukları baĢarı notları sırasal eriĢimli bir dosyada kayıtlıdır. Bu dosyayı okutarak sınıf baĢarı ortalamasını ve en
http://alikoker.name.tr
71
baĢarılı ögrenciyi bulan algoritma ve akıĢ Ģeması
DOSYAYI AÇ
DOSYAYIKAPAT
DOSYASONUMU
A, N, B
B
TP=0, BN=0, SN=0
SY=SY+1
TP=TP+B
B>BN
BN=B, NM=N
BORT=TP/SY
BORTBN, AD, NM
DUR
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. i=0, BN=0, ve SY=0 al,A4. Eger ana dosyanın sonu ise A10. adıma git,A5. A,N ve B'yi dosyadan oku,A6. SY=SY+1 al,A7. TP=TP+B al,A8. Eger B>BN ise BN=B, AD=A ve NM=N al,A9. A4. adıma geri dön,,A10. BORT=TP/SY al,A11. "Sınıf ortalaması olan" BORTdegerini yaz,A12. BN, AD ve NM'yi yaz,A13. Dosyayı kapat ve Dur.
4.9 Sırasal eriĢimli bir dosyaya çalıĢanlara ait isim, sicil nosu, bölüm, saat ücreti, fazla mesai ücreti ve bunun dıĢındaki diger gelirlerini tek kalemde kaydeden, bunlara iliĢkin gelirini hesaplayarak yazdıran, istenilen bir bölüme göre çalıĢanları listeleyen, en yüksek gelire sahip kiĢiyi tespit eden algoritma ve
http://alikoker.name.tr
72
akıĢ Ģeması
1. Dosyaya kayıt iĢlemleri 2. Heaplama iĢlemleri 3. Listeleme iĢlemleri 4. En yüksek gelirin bulunması 5.Algoritmadan çıkıĢ
SC
SC=1
SC=2
SC=4
SC=3
DOSYAYI TANIMLA
A, S, B, SU, FM, D
A, S, B, SU, FM, D
TEKRARKAYIT
YAPILACAK MIDOSYAYI
KAPAT
*DOSYAYI AÇ
DOSYAYIKAPAT
*
DOSYASONUMU
A, S, B, SU, FM,D
A, S, B, BU
E
H
B
dur
*
E
E
E
E
H
H
H
BU=SU*8*22+FM*SU*2+D
DOSYAYI AÇ
DOSYAYIKAPAT
*
DOSYASONUMU
A, S, B, SU, FM,D
A, S, B, BU
BLM
B<>BLME
E
H
HDOSYAYI AÇ
DOSYAYIKAPAT
*
DOSYASONUMU
A, S, B, SU, FM,D
BU=SU*8*22+FM*SU*2+D
G=0
G<BU
G=BU, AD=A, SC=S
G, AD, SC
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
SC=5
E
A1. BaĢla,A2. "1.Dosyaya Kayıt ĠĢlemleri" yaz,A3. "2.Hesaplama iĢlemleri" yaz,A4. "3.Listeleme ĠĢlemleri" yaz,A5. "4.En yüksek gelirin bulunması " yaz,A6. "5.Algoritmadan ÇıkıĢ" yaz,A7. SC'yi gir {SC, 1,2,3,4 yada 5 degerini alabilmektedir}A8. Eger SC=1 ise A14. adıma git,A9. Eger SC=2 ise A26. adıma git,A10. Eger SC=3 ise A34. adıma git,A11. Eger SC=4 ise A43. adıma git,A12. Eger SC=5 ise A53. adıma git,A13. A2. adıma geri dön,A14. Dosyayı tanımla,A15. A'yı gir,{adı soyadı}A16. S'yı gir,{sicil numarası}A17. B'yı gir,{bölümü}A18. SU'yu gir,{saat icreti}A19. FM'yi gir,{toplam fazla mesai miktarı}A20. D'yi gir,{diger gelirleri toplamı}A21. A,S,B,SU,FM, ve D'yi dosyaya yaz,A22. Tekrar kayıt yapılacakmı?,A23. Eger 'E' ise A15. adıma git ,A24. Dosyayı kapat,A25. A2.adıma geri dön,A26. Dosyayı aç,A27. Eger dosya sonu ise A32 adıma git,A28. A,S,B,SU,FM ve D'yi oku,A29. BU=SU*8*22+FM*SU*2+D al,A30. A,S,B,BU'yu yaz,A31. A27. adıma geri dön,A32. Dosyayı kapat,A33. A2.adıma geri dön,A34. Dosyayı aç,A35. BLM'yi gir{listelenmsi istenen bölüm bilgisi}A36. Eger dosya sonu ise A41. adıma git,A37. A,S,B,SU,FM ve D'yiA38. Eger B<>BLM ise A36. adıma geri dön,A39. A,S,B,SU,FM ve D'yi yaz,A40. A36. adıma geri dön,A41. Dosyayı kapat,A42. A2. adıma geri,A43. Dosyayı aç,A44. G=0 al,A45. Eger dosya sonu ise A50. adıma git,A46. A,S,B,SU,FM ve D'yi oku,A47. BU=SU*8*22+FM*SU*2+D al,A48. Eger G<BU ise G=BU, AD=A ve SC=S al,A49. A45. adıma git,A50. G, AD ve SC'yi yaz,A51. Dosyayı kapat,A52. A2. adıma geri dön,A53. Dur.
5 DOGRUDAN ERĠġĠMLĠ DOSYALARDA ALGORĠTMA VE AKIġ ġEMALARI
http://alikoker.name.tr
73
5.1 Dogrudan eriĢimli bir dosyaya ad-soyad, sicil nosu ve maaĢ bilgilerini kaydeden algoritma ve akıĢ Ģeması
B
DOSYAYI TANIMLAMA
KN
A, S, M
KN ye KONUMLAN
BĠLGĠLERĠ KN ye YAZ
TEKRAR KAYITYAPILACAK MI
DOSYAYI KAPAT
DUR
H
E
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı tanımla,A3. KN'yi gir {kayıt numarası},A4. A'yi gir {adı soyadı},A5. S'yi gir {sicil numarası},A6. M'yi gir {maaĢ},A7. KN'ye konumlan,A8. Dosyaya yaz,A9. Tekrar kayıt yapılacakmı?{evet hayır},A10. Eger 'E' ise A3.adıma geri dön,A11. Dosyayı kapat,A12. Dur.
5.2 Bir önceki örnekte kaydedilen bilgilerden istenilene ulaĢarak ekrana yazdırılmasını saglayan algoritma v akıĢ
http://alikoker.name.tr
74
Ģeması
B
DOSYAYI AÇ
KN
KN ye KOMUNLAN
BAġKA BĠLGĠOKUNACAK MI
DOSYAYI KAPAT
DUR
KN ye ĠLĠġKĠNBĠLGĠLERĠ OKU
EKRANA YAZ
H
E
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. KN'yi gir {kayıt numarası},A4. KN'ye konumlan,A5. Dosyadan KN'ye ilĢkin bilgileri oku,A6. Bunları ekrana yaz,A7. BaĢka bilgi okunacak mı? {E yada H},A8. Eger 'E' ise A3. adıma geri dön,A9. Dosyayı kapat,A10. Dur.
http://alikoker.name.tr
75
5.3 Dogrudan eriĢimli dosyaların güvenilir kullanılabilmesi için hazırlanmasını saglayan algoritma ve akıĢ Ģeması
B
DOSYAYI TANIMLAMA
i ye KONUMLAN
BĠLGĠLERĠ i ye YAZ
DOSYAYI KAPAT
DUR
i=1
A='@'
i=100
i=i+1
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı tanımla,A3. i=1 al,A4. A='@' al,A5. i'ya konumlan,A6. Dosyaya yaz,A7. Eger i=100 ise A10. adıma git,A8. i=i+1 al,A9. Dosyayı kapat,A10. Dur.
http://alikoker.name.tr
76
5.4 Bir önceki örnekte 100 kiĢi için hazırlanan dosyaya kayıt yapan algoritma ve akıĢ Ģeması
B
DOSYAYI AÇ
KN
A, S, M
KN ye KOMUNLAN
BĠLGĠLERĠ KN ye YAZ
TEKRAR KAYITYAPILACAK MI
DOSYAYI KAPAT
DUR
BĠLGĠLERĠ OKU
A<>'@'
Bu kayıt doluüzerine kayıtyapılacak mı
E
H
H
E
H
AKIġ ġEMASI ALGORĠTMA
E
A1. BaĢla,A2. Dosyayı aç,A3. KN'yi gir,A4. KN'ye konumlan,A5. Dosyadan oku,A6. Eger A<>'@' ise A12. adıma git,A7. A'yı gir, {adı soyadı}A8. S'yı gir, {sicil numarası}A9. M'yı gir, {maaĢ}A10. Dosyaya yaz,A11. A14. adıma git,A12. 'Bu kayıt dolu, üzerine kayıt yapılacak mı?' diye sor,A13. Eger 'E' ise A7. adıma geri dön,A14. Tekrar kayıt yapılacak mı?A15. Eger 'E' ise A3. adıma geri dön,A16. Dosyayı kapat,A17. Dur.
5.5 Bir önceki örnekte kayıt yapılan dogrudan eriĢimli dosyada istenilen bir kaydın silinmesini saglayan algoritma ve akıĢ
http://alikoker.name.tr
77
Ģeması
B
DOSYAYI AÇ
DOSYAYI KAPAT
DUR
A='@'
KN
KN ye KONUMLAN
BĠLGĠLERĠ KN ye YAZ
SĠLME ĠġLEMĠNEDEVAM
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. KN'yi gir,{ silinecek kiĢinin kayıt numarası}A4. KN'ye konumlan,A5. A='@' al,A6. Dosyaya yaz,A7. Silinecek baĢka kayıt varmı?,A8. Eger 'E' ise A3. adıma geri git,A9. Dosyayı kapat,A10. Dur.
http://alikoker.name.tr
78
5.6 Örnek 4.4’te ad-soyad, sicil nosu ve maaĢ bilgileri kaydedilen kiĢilerin bilgilerini okuyarak ekrana yazdırılmasını saglayan algoritma ve akıĢ Ģeması
B
DOSYAYI AÇ
i ye KONUMLAN
DUR
i=1
i=100
i=i+1
BĠLGĠLERĠ OKU
A='@'
BĠLGĠLERĠ YAZ
DOSYAYI KAPAT
E
H
H
E
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. Dosyayı aç,A3. i=1 al,A4. i'ye konumlan,A5. Dosyadan oku,A6. Eger A='@' ise A8. adıma git,A7. Bilgileri ekrana yaz,A8. Eger i=100 ise A11. adıma gitA9. i=i+1 al,A10. A4. adıma geri dön,A11. Dosyayı kapat,A12. Dur.
5.7 (Güncelleme algoritması) 4.4’te ad_soyad, sicilnosu ve maaĢ bilgileri kaydedilen kiĢilerdn istenilen birisine ulaĢarak bu kiĢiye
http://alikoker.name.tr
79
iliĢkin bilgilerde degiĢiklik yapan algoritma ve akıĢ Ģeması
B
DOSYAYI AÇ
KN
KN ye KONUMLAN
KN ye YAZ
BaĢka KaydaBakılacak mı
DOSYAYI KAPAT
DUR
BĠLGĠLERĠ OKU
1. Adı Soyadı
2. Sicil Numarası
3. MaaĢ
4. ÇıkıĢ
SC
SC=1
SC=2
SC=4
SC=3
A
S
M
E
E
E
E
E
H
H
H
H
AKIġ ġEMASI ALGORĠTMA
H
A1. BaĢla,A2. Dosyayı aç,A3. KN'yi gir,{degiĢklik yapılacak kiĢini kayıt numarası}A4. KN'ye konumlan,A5. Dosyadan oku,A6. "1-Adı soyadı, 2-Sicil numarası, 3-MaaĢı, 4-ÇıkıĢ" yaz,A7. "Seçiminiz nedir diye sor?" SC'yi gir,A9. Eger SC=1 ise A'yı gir,A10. Eger SC=2 ise S'yı gir,A11. Eger SC=3 ise M'yı gir,A12. Eger SC=4 ise A15. adıma git,A13. Dosyada KN'ye yaz,A14. A6. adıma geri dön,A15. BaĢka kayda bakılacak mı diye sor?,A16. Eger 'E' ise A3. adıma geri dön,A17. Dosyayı kapat ve Dur.
5.8 Dogrudan eriĢimli bir dosyaya kiĢilerin adı_soyadı, telefon nosu, ev adresi ve iĢ adresi bilgilerini an menü altında kaydeden, listeleyen, istenilen bir kiĢiye ulaĢmayı saglayan
http://alikoker.name.tr
80
algoritma ve akıĢ Ģeması
1. Dosyanın hazırlanması 2. Dosyaya kayıt 3. Listeleme 4. Ġstenilen kayda ulaĢım 5. ĠĢlemlerden çıkıĢ
SC
SC=1
SC=2
SC=4
SC=3
B
*
E
E
E
E
H
H
H
DOSYAYI TANIMLAMA
i ye KONUMLAN
DOSYADA i ye YAZ
DOSYAYI KAPAT
*
i=1
A='@'
i=100
i=i+1
E
H
DOSYAYI AÇ
KN
A, T, EV, iS
KN ye KONUMLAN
KN ye YAZ
TEKRAR KAYITYAPILACAK MI
DOSYAYI KAPAT
*
DOSYADAN OKU
A='@'
E
H
E
H
DOSYAYI AÇ
i ye KONUMLAN
*
i=1
i=100
i=i+1
DOSYADAN OKU
A='@'
BĠLGĠLERĠ YAZ
DOSYAYI KAPAT
E
H
H
E
DOSYAYI AÇ
KN
KN ye KOMUNLAN
BAġKA KĠġĠVARMI
DOSYAYI KAPAT
*
DOSYADAN OKU
BĠLGĠLERĠ YAZ
H
E
Bu kayıt dolu
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. "1.Dosyayı Hazırlama ĠĢlemleri" yaz,A3. "2.Dosyaya Kayıt ĠĢlemleri" yaz,A4. "3.Bilgileri Listeleme ĠĢlemleri" yaz,A5. "4.Ġstenilen Kayda UlaĢım" yaz,A6. "5.ĠĢlemlerden ÇıkıĢ" yaz,A7. SC'yi gir {SC, 1,2,3,4 yada 5 degeri alabilmektedir}A8. Eger SC=1 ise A14. adıma git,A9. Eger SC=2 ise A23. adıma git,A10. Eger SC=3 ise A39. adıma git,A11. Eger SC=4 ise A49. adıma git,A12. Eger SC=5 ise Dur.A13. A2. adıma geri dön,A14. Dosyayı tanımla,A15. i=1 al,A16. A='@' al,A17. i'ye konumlan,A18. Dosyaya yaz,A19. Eger A=100 ise A21. adıma gitA20. i=i+1 al ve A16. adıma geri dön,A21. Dosyayı kapat,A22. A2.adıma geri dön,A23. Dosyayı aç,A24. KN'yı gir,A25. KN'ye konumlan,A26. Dosyadan oku,A27. Eger A='@' ise A34. adıma git,A28. A'yı gir, {adı soyadı}A29. T'yı gir, {telefon numarası}A30. EV'i gir, {ev adresi}A31. Ġġ'i gir, {iĢ adresi}A32. Dosyaya yaz,A33. A35. adıma gitA34. 'Bu kayıt dolu ' yaz,A35. BaĢka bir kayıt yapılacak mı? Diye sor,A36. Eger 'E' ise A24. adıma geri dön,A37. Dosyayı kapat,A38. A2. adıma geri dön,A39. Dosyayı aç,A40. i=1 al,A41. i'ya konumlan,A42. Dosyadan oku,A43. Eger A='@' ise A45. adıma git,A44. Bilgleri ekrana yaz,A45. Eger i=100 ise A47. adıma git,A46. i=i+1 al ve A41. adıma geri dön,A47. Dosyayı kapat,A48. A2. adıma geri dön,A49. Dosyayı aç,A50. KN'yi gir, {aranılan kiĢinin kayıt numarası}A51. KN'ye konumlan,A52. Dosyadan oku,A53. Ekrana yaz,A54. Aranan baĢka biri var mı? Diye sor,A55. Eger 'E' ise A50. adıma geri dön,A56. Dosyayı kapat,A57. A2. adıma geri dön,
http://alikoker.name.tr
81
6 ÇEġĠTLĠ KONULARDA ALGORĠTMA VE AKIġ ġEMALARI
6.1 Ġkinci dereceden bir bilinmeyenli denklem sistemlerinin çözümlerini bulan algoritma ve akıĢ Ģeması
B
A, B, C
D=B^2-4*A*C
D<0
D=0
X1=(-B+D^(1/2))/(2*A)
X1=(-B-D^(1/2))/(2*A)
X1, X2
DUR
Gercel Kök yok
D=-B/(2*A)
X
AKIġ ġEMASI
A1. BaĢla,A2. A,B ve C'yi girA3. D=B^2-4*A*C al,A4. Eger D<0 ise A13. Adıma git,A5. Eger D=0 ise A10. adıma git,A6. X1=(-B+D^(1/2))(2*A) al,A7. X2=(-B-D^(1/2))(2*A) al,A8. X1 ve X2'yi yaz,A9. A14. Adıma git ,A10. X=-B/(2*A) al,A11. X'i yaz,A12 A14.adıma git,A13. "Denklemin Gerçel Kökleri Yok"yaz,A14. Dur.
ALGORĠTMASI
E
E
H
H
http://alikoker.name.tr
82
6.2 N bilinmeyenli N denklemden meydana gelen lineer denklem sisteminin çözümünü bulan algoritma ve akıĢ Ģeması
A, B
i=1
J=1
D(i,J)
J=B
J=J+1
i=A
i=i+1
B
M=0, L=0
S=1,P=0
T=1
G=D(T, T)
E
H E
H
i=1
i=B
i=i+1
D(T, i)=D(T, i)/G
M=M+1, S=S+1P=P+1, L=L+1
K=S
C=D(K, M)
J=P
D(K, J)=D(L, J)*C-D(K, J)
J=B
J=J+1
K=A
J=J+1
K=K+1
E
H
E
H
E
A
T=A-1
T=T+1
T=A
G=D(T, T)
i=1
i=B
i=i+1
D(T, i)=D(T, i)/G
TP=0
K=1
J=K+1
K=K-1
X(A)=D(A, B)
K=A-1
TP=TP+D(K, J)*X(J)
J=A
J=J+1
X(K)=D(K, B)-TP
i=1
X(i)
i=A
i=i+1
DUR
E
H
E
H
E
H
E
H
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,
A2. A,B'yi gir,
A3. I=1 al,
A4. J=1 al,
A5. D(I,J)'yi gir,
A6. Eger J=B ise A8. adıma git,
A7. J=J+1 al ve A5. adıma git,
A8. Eger I=A ise A10. adıma git,
A9. I=I+1 al ve A4. adıma geri dön,
A10.M=0, L=0, S=1 ve P=0 al,
A11.T=1 al,
A12.G=D(T,T) al,
A13.I=1 al,
A14.D(T,I)=(T,I)/G al,
A15.Eger I=B ise A17. adıma git,
A16.I=I+1 al ve A14. adıma geri dön,
A17.M=M+1, S=S+1, P=P+1 ve L=L+1 al,
A18.K=S al,
A19.C=D(K,M) al,
A20.J=P al,
A21.D(K,J)=D(L,J)*C-D(K,J) al
A22.Eger J=B ise A24. adıma git,
A23.J=J+1 al ve A21. adıma geri dön,
A24.Eger K=A ise A26. adıma git,
A25.K=K+1 al ve A19. adıma geri dön,
A26. Eger T=A-1 iseA28. adıma git,
A27.T=T+1 al ve A12. adıma geri dön,
A28.T=A,G=D(T,T) al,
A29.I=1 al,
A30.D(T,I)=D(T,I)/G al,
A31.Eger I=B ise A33. adıma git,
A32.I=I+1 al ve A30. adıma geri dön
A33.X(A)=D(A,B) al,
A34.K=A-1 al,
A35.J=K+1 al,
A36.TP=TP+D(K,J)*X(J) al,
A37.Eger J=A ise 39.adıma git,
A38.J=J+1 al ve A36.adıma geri dön,
A39.X(K)=D(K,B)-TP al,
A40.TP=0 al,
A41.Eger K=1 ise A43. adıma git,
A42.K=K+1 al ve A5. adıma geri dön,
A43.I=1 al ,
A44.X(I)'yı yaz,
A45.Eger I= A ise A47. adıma git,
A46.I=I+1 al ve A44. adıma geri dön,
A47.Dur.
http://alikoker.name.tr
83
6.3 Girilen bir tarihin hangi güne rastladıgını bulan algoritma ve akıĢ Ģeması
B
i=1
A(i)
i=12
i=i+1 YIL, AY, GÜN
TAM(YIL/4)*4=YIL
A(2)=28
TOPLAM=(YIL-1)*365+TAM((YIL-1)/4)
i=1
TOPLAM=TOPLAM+A(i)
i=AY-1
i=i+1
TOPLAM=TOPLAM+GUN
M=TAM(TOPLAM/7)
N=TAM(TOPLAM-M*7)
N=0
N=1
N=2
N=3
N=7
PAZAR
PAZARTESĠ
SALIE
H
H
E
E
H
E
H
N=4
N=5
N=6
N=7
PERġEMBE
CUMA
CUMARTESĠ
DUR
E
H
H
E
E
H
E
H
ÇARġAMBA
A(2)=29
E
H
AKIġ ġEMASI
A1. BaĢla,A2. I=1 al,A3. A(I) 'yı gir, {Ayların gün sayılarının giriĢi}A4. Eger I=12 ise A6. adıma git,A5. I=I+1 al ve A3. adıma git,A6. YIL'ı gir, {Yıl degeri}A7. AY'ı gir, {AY degeri}A8. GÜN'ı gir, {Gün degeri}A9. Eger tam(YIL/4)*4=YIL ise A11.adıma git,A10. A(2)=28 al ve A12.adıma git,A11. A(2)=29 al,A12. TOPLAM=(YIL-1)*365+TAM((YIL-1)/4) al,A13. I =1 al,A14. TOPLAM=TOPLAM+A(I) al ,A15. Eger I=AY-1 ise A17. adıma git,A16. I=I+1 al ve A14. adıma git,A17. TOPLAM=TOPLAM+GÜN al,A18. M=TAM(TOPLAM/7) al,A19. N=TAM(TOPLAM-M*7) al,A20. Eger N=0 ise N=7 al,A21. Eger N=1 ise "Pazar" yaz,A22. Eger N=2 ise "Pazartesi" yaz,A23. Eger N=3 ise "Salı" yaz,A24. Eger N=4 ise "ÇarĢamba" yaz,A25. Eger N=5 ise "PerĢembe" yaz,A26. Eger N=6 ise "Cuma" yaz,A27. Eger N=7 ise "Cumartesi" yaz,A28. Dur
ALGORĠTMASI
http://alikoker.name.tr
84
6.4 Ögrencilerin adı_soyadı, numarası, bilgisayar dersinden almıĢ oldukları vize ve final notlarını dizilere yükleyerek baĢarı durumlarını tespit ettikten sonra baĢarısız olanları baĢarısız digerlerine de orta, iyi ve pekiyi Ģeklinde belirleyen algoritma ve akıĢ Ģeması
B
K
i=1
A(i), N(i)V(i), F(i)
F(i)<50
M=V(i)*0.4+F(i)*0.6
M<50
B(i)=M
B(i)>=50 veB(i)<70
B(i)>=70 veB(i)<90
Y(i)='ORTA'
Y(i)='ĠYĠ'
B(i)>=90 Y(i)='PEKĠYĠ'
A(i), N(i)V(i), F(i)
i=K
i=i+1
DUR
H
E
H
E
H
E
H
E
H
E
H
A1. BaĢla,A2. K'yı gir,{Girilecek ögrenci sayısı}A3. I=1 al,A4. A(I)'yı gir, {Adı soyadı}A5. V(I)'yı gir, {Numarası}A6. N(I)'yı gir, {Vize notu}A7. F(I)'yı gir, {Final notu}A8. Eger F(I)<50 iseA14. adıma git,A9. M=V(I)*0.4+F(I)*0.6 al,A10. Eger M<50 ise A14. adıma git,A11. B(I)=M al,A12. Eger B(I)>=50 ve B(I)<70 ise Y(I)='Orta' al,A13. Eger B(I)>=70 ve B(I)<90 ise Y(I)='Ġyi' al,A14. Eger B(I)>=90 ise Y(I)='Pekiyi' al,A15. A17. adıma git,A16. B(I)=" ve Y(I)='BaĢarısız' al,A17. A(I),N(I),B(I) ve Y(I)'yı yaz,A18. Eger I=K ise A20.adıma git,A19. I=1 al ve A4. adıma geri dön,A20. Dur.
AKIġ ġEMASI ALGORĠTMA
E
http://alikoker.name.tr
85
6.5 10’luk sayı sitemindeki bir sayıyı iki’lik bir sayı sistemine çeviren algoritma ve akıĢ Ģeması
B
SAYI
i=0
SAYI=0
B=TAM(SAYI/2)K=SAYI/2*B
i=i+1
S(i)=K
SAYI=B
Z=1
A(Z)
Z=1
Z=Z-1
DUR
E
H
E
H
A1. BaĢla,A2. SAYI'yı gir,A3. I=0 al,A4. Eger SAYI=0 ise A8. adıma git,A5. B=TAM(SAYI/2) ve K=SAYI-2*B al,A6. I=I+1 al,A7. S(I)=K ve SAYI=B al ve A4. adıma geri dön,A8. Z=I al,A9. A(Z)'yi yaz,A10. Eger Z=1 ise A12.adıma git,A11. Z=Z-1 al ve A9. adıma geri dön,A12. Dur.
AKIġ ġEMASI ALGORĠTMA
6.6 T = x / a + ( x * x ) / a * (a + 1) + (x * x * x) / a * (a + 1) * (a + 2) + ..... |x| <= 1 serisinin ilk 5 teriminin toplamını hesaplayan algoritma ve akıĢ Ģeması
B
S=1
i=1
A(i)
S=S*A(i)
i=N
i=i+1
GOR=S^(1/N)
GOR
DUR
E
H
A1. BaĢla,A2. S=1 al,A3. I=1 al,A4. A(I)'yı gir,A5. S=S*A(I) al,A6. Eger I=N ise A8. adıma git,A7. I=I+1 al ve A4. adıma geri dön,A8. GOR=S^(1/N) al,A9. GOR degerini yaz,A10. Dur
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
86
6.7 N elemandan meydana gelen bir A dizisinin geometrik ortalamasını bulan algoritma ve akıĢ Ģeması
B
N
i=1
TP=0
A(i)
TP=TP+1/A(i)
i=N
i=i+1
N=N/TP
N
DUR
E
H
A1. BaĢla,A2. N'yi gir,A3. I=1 al ,A4. TP=0 al,A5. A(I)'yı gir,A6. TP=TP+1/A(I) al,A7. Eger I=N iseA). adıma git,A8. I=I+1 al ve A5. adıma git,A9. H=N/TP al,A10. H'yi yaz,A11. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
87
6.8 N elemandan meydana gelen bir A dizisinin harmonik ortalamasını bulan algoritma ve akıĢ Ģeması
B
N
i=1
TP=0
A(i)
TP=TP+1/A(i)
i=N
i=i+1
N=N/TP
N
DUR
E
H
A1. BaĢla,A2. N'yi gir,A3. I=1 al ,A4. TP=0 al,A5. A(I)'yı gir,A6. TP=TP+1/A(I) al,A7. Eger I=N iseA). adıma git,A8. I=I+1 al ve A5. adıma git,A9. H=N/TP al,A10. H'yi yaz,A11. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
88
6.9 (standart hata algoritması) N elemandan meydana gelen bir A dizisinin standart hatasını bulan algoritma ve akıĢ Ģeması
B
N
i=1
TP=0
A(i)
TP=TP+A(i)
i=N
i=i+1
S=TP/N
i=1
E
H
TP=TP+A(i)-S
i=N
i=i+1 SN=TP/N
SN
DUR
A1. BaĢla,A2. N'yi gir,A3. I=1 ve TP=0 al ,A5. A(I)'yı gir,A6. TP=TP+1/A(I) al,A7. Eger I=N iseA9. adıma git,A8. I=I+1 al ve A5. adıma git,A9. S=TP/N al,A10. I=1 al,A11. TP=TP+|A(I)-S| al,A12. Eger I=N ise A14. adıma git,A13. I=I+1 al ve A11. adıma git,A14. SH=TP/N al,A15. SH'yi yaz,A16. Dur.
AKIġ ġEMASI ALGORĠTMA
6.10 (standart sapma algoritması) N sınıf aralıgı ve buna karĢılık
gelen N frekans verildiginde,[(∑f(m-x) - (m-x)) / ∑f ]* [(∑f(m-
http://alikoker.name.tr
89
x) - (m-x)) / ∑f)] ile tanımlanan standart sapmayı bulan algoritma ve akıĢ Ģeması
B
i=1, TP=0, ORT=0
B1(i), B2(i), F(i)
M(i)=(B1(i)+B2(i))/2
TP=TP+F(i)
X(i)=F(i)*M(i)
ORT=ORT+X(i)
i=N
i=i+1
i=1, T1=0, T2=0, T3=3
F1(i)=M(i)-ORT
F2(i)=F1(i)^2
F3(i)=F(i)*F2(i)
T1=T1+F1(i)
T2=T2+F2(i)
T3=T3+F3(i)
i=N
i=i+1
S=(T3/TP)^(1/2)
S
DUR
E
H
A1. BaĢla,A2. I=1, TP=0 ve ORT=0 al,A3. B1 (I), B2(I) ve F(I)'yı gir,A5. M(I)= (B1(I)+B2(I)=/2 al,A6. X(I)=F(I)*M(I) al,A7. ORT=ORT+X(I) al,A8. Eger I=N ise A10. adıma git,A9. I=I+1 al ve A3. adıma geri dön,A10.I=1, T1=0,T2=0 ve T3=0 al,A11.F1(I)=M(I)-ORT al,A12.F2(I)=F1(I)^2 al,A13.F3(I)=F(I)*F2(I) alA14.T1=T1+F1(I) al,A15.T2=T2+F2(I) al,A16.T3=T3+F3(I) al,A17.Eger I=N ise A19. adma git,A18.I=I+1 al ve A11. adıma geri dön,A19.S=(T3/TP)^(1/2) al,A20.S Degerini yaz,A21.Dur.
AKIġ ġEMASI ALGORĠTMA
6.11 (En küçük kareler yöntemi ile dogrusal regrasyon denkleminin bulunması ve yaklaĢık tahmin algoritması) X bagımsız degiĢken
http://alikoker.name.tr
90
ve Y bagımlı degiĢken olmak üzere dogrusal regrasyon denlemi: Y = A + BX Ģeklinde tanımlanmaktadır.
B
i=1
TX=0, TY=0TX1=0, TXY=0
X(i), Y(i)
TX=TX+X(i)
TY=TY+Y(i)
TX1=TX1+X(i)^2
TXY=TXY+X(i)*Y(i)
i=N
i=i+1
B=(N*TXY-TX*TY)/(N*TX1-TX^2)
A=(TX1*TY-TX*TXY)/(N*TX1-TX^2)
XTH
YTH=A+B*XTH
XTH
DUR
E
H
A1. BaĢla,A2. I=1 al,A3. TX=0, TY=0 TX1=0, TXY=0 al,A4. X(I) ve Y(I)'yı gir,A5. TX=TX+X(I) al,A6. TY=TY+Y(I) al,A7. TX1=TX1+X(I)^2 al,A8. TXY=TXY+X(I)*Y(I) al,A9. Eger I=N is A11. adıma git,A10.I=I+1 al ve A4.adıma geri dön,A11.B=(N*TXY-TX*TY)/(N*TX1-TX^2) al,A12.A=(TX1*TY-TX*TXY)/(N*TX1-TX^2) al,A13.XTH'yi gir,{Tahmin edilmesi gerekenX degeri}A14.YTH=A+B*XTH al,A15.YTH'yi yazA16.Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
91
6.12 x’in farklı degerleri için y=f(x) fonksiyonunun bulunmasına iliĢkin olgoritma ve akıĢ Ģeması
B
X
X<0 Y=1
X>0 veX<2
X>=2 ve X<4
Y=X^2-2*X
Y=X^2-X^(1/2)+X
X>=4 Y=X
Y
DUR
H
E
H
E
H
E
H
A1. BaĢla,A2. X'i gir,A3. Eger x<0 ise Y=1 alA4. Eger X>=0 ve X<2 ise Y=X^2-2*X al,A5. Eger X>= 2 ve X<=4 ise Y=-X^2-X^(1/2)+x al,A6. Eger X>4 ise Y=X al,A7. Y'yi yazA8. Dur.
E
AKIġ ġEMASI ALGORĠTMA
6.13 NxM’lik bir matrise kiĢilere iliĢkin degiĢik bilgilerin yüklenerek istenildiginde herhangi bir bilgisi girilerek ilgili kiĢiye ulaĢılarak
http://alikoker.name.tr
92
bilgilerinin yazdırılmasını saglayan algoritma ve akıĢ Ģeması
B
i=1
J=1
A(i,J)
J=N
J=J+1
i=M
i=i+1
i=M
i=i+1
J=1
J=N
J=J+1 DUR
AD
i=1
A(1,i)<>AD
A(J,i)
E
HE
H
E
H
E
H
E
H
A1. BaĢla,A2. I=1 al,A3. J=1 al,A4. A(J,I)'yı gir,A5. Eger J=N ise A7. adıma gitA6. J=J+1 al ve A4. adıma geri dön,A7. Eger I=M ise A9. adıma git,A8. I=I+1 al ve A3. adıma geri dön,A9. AD'ı gir,{Aranılan kiĢinin adı}A10. I=1 al,A11. EgerA(1,I)<>AD ise A16. adıma git,A12. J=1 al,A13. A(J,I)'yı yaz,A14. Eger J=N ise A16. adıma git,A15. J=J+1 al ve A13. adıma geri dön,A16. Eger I=M ise A18.adıma git,A17. I=I+1 al ve A11. adıma Geri dön,A18. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
93
6.14 Sin x fonksiyonunun x=0 civarında seriye açılarak hesaplanmasını saglayan algoritma ve akıĢ Ģeması
B
Pi=3,141593
X=0
R=X*Pi/180
P=1, L=1, M=1
S1=R
L=L+2
P=P*L*(L-1)
M=M*(-1)
S=S1+M*(R^L)/P
MUTLAK(S-S1)<1E-10
S1=SX, S
X=90
X=X+10
DUR
E
E
H
A1. BaĢla,A2. PI=3,141593 al,A3. X=0 al,A4. R=X*PI/180 al,A5. P=1, L=1 ve M=1 al,A6. S1=R al,A7. L=L+2 al,A8. P=P*L*(L-1) al,A9. M=M*(-1) al,A10. S=S1+M*(R^L)/P al,A11. Eger MUTLAK(S-S1)<0,0000000001 ise A14. adıma git,A12. S1=S al ve A7. adıma geri dön,A13. X ve S'yi yaz,A14. Eger X=90 ise A16. adıma git,A15. X=X+10 al ve A4. adıma geri dön,A16. Dur.
AKIġ ġEMASI ALGORĠTMA
H
http://alikoker.name.tr
94
6.15 f(x)=e fonksiyonunun seriye açılımından faydalanarak hesaplanmasını saglayan algoritma ve akıĢ Ģeması
B
E1=1, F=1, i=1
F=F*i
E=E1+1/F
(E-E1)<0,0000001
E
E1=E
i=i+1DUR
E
H
A1. BaĢla,A2. E1=0 , F=0 , I=1 al,A3. F=F*I al,A4. E=E1+1/F al,A5. Eger (E-E1)<0,0000001 Ġse A8. adıma git,A6. E1=E al,A7. I=I+1 al ve A3. adıma geri dön,A8. E'yi yaz,A9. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
95
6.16 LOG(X) fonksiyonun degerinin seriye açılımından yararlanarak hesaplayan algoritma ve akıĢ Ģeması
B
X=1
B=(X-1)/(X+1)
i=1, T=0
A=2*i-1
T1=T+(B^A)/A
(T1-T)<0,0000001
i=i+1, T=T1
X, T1
X=20
X=X+1
DUR
E
H
E
H
A1. BaĢla,A2. X=1 al,A3. B=(X-1)/(X+1) al,A4. I=1, T=0 al,A5. A=2*I-1 al,A6. T1=T+(B^A)/A al,A7. Eger (T1-T)< 0,0000001 ise A10. adıma git,A8. I=I+1 al,A9. T=T1 al ve A5. adıma geri dön,A10. T1=2*T1 al,A11. X ve T1'i yaz,A12. Eger X=20 ise A14. adıma git,A13. X=X+1 al ve A3.adıma geri dön,A14. Dur.
AKIġ ġEMASI ALGORĠTMA
http://alikoker.name.tr
96
6.17 PI sayısının degerini seri açılımından yararlanarak hesaplayan algoritma ve akış şeması
B
N
T=0, F=1
i=1
T=T+(1/i)*F
F=-F
i=2*N
i=i+2
P=4*T
P
DUR
E
H
AKIġ ġEMASI ALGORĠTMA
A1. BaĢla,A2. N' yi gir,A3. T=0, F=1 al,A4. i=1 al,A5. T=T+(1/i)*F al,A6. F=-F al,A7. Eğer i=2*N ise A9. adıma git,A8. i=i+2 al, ve A5. adıma geri dön,A9. P=4*T al,A10. P' yi yaz ve Dur.
http://alikoker.name.tr
97
KAYNAKLAR
1.KARADOĞAN,K.,’’Açıklamalı örneklerle
fortran 4’’,Ġstanbul,1980 2.TÜTÜNCÜOĞLU,E.,’’Sayısal analiz ve program- lama “Uludağ Üniversitesi Mühendislik Fakültesi,1987 3.SAYDAM,T.,AKYÜZ,F., ĠPEK,M.,”Fortran 4 ile etkin programlama”,Çağlayan kitapevi ,Ġstanbul ,1976 4.BAYBURAN ,B., “Turbo Pascal” Beta basın yayım dağıtım A.ġ.,Ġstanbul ,1988 5.Borland Ġnternational ,”Turbo Pascal 5.0” programer’s guide ,Borland international ınc.,1988 6.ÇÖLKESEN,R., ÖRENCĠK,B., “Bilgisayar haberleĢmesi ve ağ teknolojileri”,Papatya yayınları ,Ġstanbul ,1999 7.KORKMAZ,H., “Yapısal Basıc Prensibleri”Yetkin A.ġ.,Ankara,1991
http://alikoker.name.tr