Professional Documents
Culture Documents
ALOR TMA
Problem zmlerinde izlenecek olan ad mlar n haz rlan na bilgisayar dilinde algoritma denir. Bir problemin birden fazla zm yolu bulunabilir. Bilgisayar kullanarak bir problem zmek istiyorsak, yapaca m z ilk i lem, problemi zp algoritmas n haz rlamak olacakt r. Algoritman n zel (geometrik) ekillerle gsterilmesi, ak diyagram olarak tan mlan r.
Bilgisayarla bir problem zmnde yap lacak ilk ve temel i , problemin algoritmas n haz rlamakt r. Algoritma haz rland ktan sonra, istenilen programlama dilinin komutlar ile program yaz l r. Bir problemin algoritmas haz rlanabiliyor ise o problem zlebilir demektir. Program yazarken de i ecek tek ey komutlar d r.
Algoritma Kurallar
Her i lem sat r n n, bir sat r numaras olmal d r. Ad m ad m tan mlanan zmlemede bir ya da birden fazla ad m n bir ok tekrar gerekebilir. Bu durumda belirli bir i leme dn , o i lem sat r n n sat r numaras verilerek yap l r. E er herhangi bir ad mda bir art gerekirse veya belirtilirse bu sa lan nca yap lacak i lemler, sat r numaras verilerek veya devam nda yap labilir. E er art sa lanm yorsa; devam ndaki i leme bak lmadan bir alt sat ra geilerek i lemler yap l r. Algoritmada e it (=) i aretinin anlam e itli in sa ndakileri hesaplayarak sol taraftaki de i kene aktar anlam na gelmektedir. Seilen de i kenler anlaml olmal d r.
De i ken
Program n al t r lmas nda farkl de erler alabilen bilgi alanlar d r. De i ken isimlerinde;
a. b. c. d.
ngiliz alfabesinin A-Z aras byk ve kk 26 harfi kullan labilir. 0-9 aras rakamlar kullan labilir. Alt izgi(_) d nda zel karakter kullan lamaz. De i ken isimleri mutlaka harf ile ba lamal d r.
De i kenleri isimlendirme tamamen kullan c ya ba l d r. De i ken ad n n; yerini ald ifade ile a r m yapacak ekilde olmas program n anla l rl a s ndan nemlidir. rne in bir ki inin ad n n aktar ld de i ken AD veya Ad, soyad n n aktar ld de i ken SOY veya Soy olabilir.
rnek.1.
Ekrana iki tane say okunmaktad r. Okunan say lar n toplamlar n bulan algoritmay yaz n z.
rnek.1.
Alg1
rnek.1.
Alg2
rnek.1.
Alg3
Not:
Ekrana de er giri leri OKU deyimi ile yap ld ndan dolay , okunacak de erleri herhangi bir sembolik de i ken kullanarak OKU deyimi ile okutmaktay z. IKTI ise YAZ deyimi ile verilmektedir. Bu nedenle okunan ve yazd r lan de erler birden fazla ise okutturulan ve yazd r lan de erler aras na (,) i areti konulmaktad r. Bilgisayarda i lemler yap ld ktan sonra bulunan sonucun mutlaka saklanmas gerekmektedir. Bulunan sonucu saklayabilmek iin ncelikle bir de i kene aktar p, sonular n ekranda grntlenmesi iin de hangi de i kende sakl tutuluyorsa, de i kenler YAZ deyimi kullan larak ekranda grntlenir
rnek.2.
Ekrana iki tane say okunmaktad r. Okunan say lar n toplamlar n ve farklar n bulan algoritmay yaz n z.
rnek.2.
Alg1
rnek.2.
Alg2
rnek.3.
Ekrana iki tane say okunmaktad r. Okunan say lar n toplamlar n ve farklar n bulan ve a a daki ekran grntsn veren algoritmay yaz n z. TOPLAM =? FARK = ?
rnek.3.
Alg.1
1) BA LA 2) A, B OKU 3) TOPLAM = A + B 4) FARK = A B 5) "TOPLAM =" , TOPLAM YAZ 6) "FARK = " , FARK YAZ 7) DUR
rnek.4.
Ekrana bir tane say okunmaktad r. Okunan say n n karesini, kpn bulan ve a a daki ekran grntsn veren algoritmay yaz n z. SAYI=? KARES = ? KP= ?
rnek.4.
Alg1
1) BA LA 2) A OKU 3) KARE = A ** 2 4) KUP = A3 5) "SAYI=", A YAZ 6) KARESI=", KARE YAZ 7) KP=",KP YAZ 8) DUR
rnek.5.
Ekrana iki tane say okunmaktad r. Okunan say lar aras nda aritmetik drt i lemi yapan ve a a daki ekran grntsn veren algoritmay yaz n z. 1. SAYI= 2. SAYI= FARK= ARPIM= BLM= TOPLAM=
rnek.5.
1) 2) 3) 4) 5) 6) 7) 8) 9) 10) 11) 12) 13) BA LA A, B OKU TOPLAM = A + B FARK = A - B ARPIM = A * B BLM = A / B 1.SAYI=, A YAZ 2.SAYI=, B YAZ TOPLAM=, TOPLAM YAZ FARK=, FARK YAZ ARPIM=, ARPIM YAZ BLM=, BLM YAZ DUR
Alg1
Aktarma
De i ken= fade Yukar daki sat rda De i ken yazan k s m, herhangi bir de i ken ismidir. fade yazan k s mda ise; matematiksel, mant ksal veya alfasay sal ifade olabilir. Aradaki = sembol aktarma ifadesi olarak adland r l r ve sa daki ifadenin sonucu soldaki de i kene aktar r. Bu durumda de i kenin e er varsa bir nceki de eri silinir. Bunu bir rnekle ifade edelim.
rnek.6.
Ekrana tane say okunmaktad r. Bu say lar n toplam ilk olarak 0 kabul edilmektedir. Her say girildi inde toplam say ile toplanarak toplam say de eri de i mekte ve ekrana yazd r lmaktad r.
rnek.6.
1) 2) 3) 4) 5) 6) 7) 8) 9) 10) 11) 12)
Alg1
Ba la T=0 A say s n oku T=T+A 1. T De eri= T de erini yaz B say s n oku T=T+B 2. T De eri= T de erini yaz C say s n oku T=T+C 3. T De eri= T de erini yaz Dur
Ko ullu
lemler
Bu zamana kadar yapm oldu umuz i lemlerde, sadece oku, i lem gerekle tir ve sonular yazd r anlam nda programlama i lemleri yapt k. Burada ise, bir ko ula ba l olarak i lem yap lmas durumunda ko ullu i lemler ad n verdi imiz ifadenin kullan l n ve uygulanmas n inceleyece iz. Bilgisayar programlama da kullan lacak olan ko ullu i lemlerde esas: ortaya konulan ko ulun sa lan p sa lanmamas durumudur. Ko ul sa lan r ise; Bilgisayar ko ulun devam ndaki i lemi yrtr. Ko ul sa lanm yor ise; Bilgisayar ko ulun devam ndaki i lemleri yapmadan direkt bir alt sat ra iner ve i lemleri bu sat rdan yrtmeye devam eder. Trkede ko ulu belirlemek iin E ER kelimesi kullan lmas na ra men, algoritma yazarken genellikle ko ulu belirlemek iin E ER kelimesi yerine programc l kta kolayl k sa lamas a s ndan IF kelimesini kullanmay tercih edece iz.
rnek.7.
Ekrana birbirinden farkl iki say okunmaktad r. Okunan bu say lardan byk olan n nce, kk olan n sonradan yazd ran algoritmay yaz n z.
rnek.7.
Alg1
1) BA LA 2) SAYI1, SAYI2 OKU 3) IF SAYI1 > SAYI2 SE SAYI1, SAYI2 YAZ 4) IF SAYI2 > SAYI1 SE SAYI2, SAYI1 YAZ 5) DUR
rnek.8.
Ekrana bir rencinin ad vize notu ve final notu olmak zere iki tane s nav notu okunmaktad r. Okunan notlara gre rencinin a a daki formle gre ba ar ortalamas n hesaplayan ve ba ar ortalamas 60tan kk ise ad ile birlikte ba ar s z, byk ise ad ile birlikte ba ar l yazd ran algoritmay yaz n z. BORT = V ZE *( 40 /100) + F NAL * (60/100)
rnek.8.
Alg1
1) BA LA 2) AD, V ZE, F NAL OKU 3) BORT = V ZE *( 40 /100) + F NAL * (60/100) 4) IF BORT < 60 SE AD, BA ARISIZ YAZ : G T 6 5) AD, BA ARILI YAZ 6) DUR
Ve Ba lac Bu ba la birden fazla art belirtildi inde kullan l r ki bu artlar n do ru olmas istendi inde araya VE ba lac kullan l r. Bu ba la kullan m nda belirtilen artlar n hepsinin do ru olmas durumunda SE den sonraki i lemler yap l r. Burada belirtilen artlardan bir tanesinin bile yanl olmas durumunda SE den sonraki i lemlere bak lmaks z n bir alt sat rdan i lemlerin yap lmas srdrlr. Veya Ba lac Birden fazla art var ve bu artlardan sadece bir tanesinin do ru olmas yeterli oluyorsa bu durumda Veya ba lac kullan l r. Veya ba lac n n kullan lmas nda verilen artlardan sadece bir tanesi do ru ise bu durumda devam ndaki i lemler yap l r. Belirtilen artlar n hi birisinin do ru olmamas durumunda, devam ndaki i lemlere bak lmaks z n bir alt sat rdan i lemler srdrlr.
rnek.9.
Ekrana bir e kenar genin kenar uzunlu u okunmaktad r. Buna gre okunan uzunluklara kar l k genin e kenar gen olup olmad n bulan, e kenar ise e kenar; de ilse e kenar gen de il, mesaj n grntleyen algoritmay yaz n z.
rnek.9.
Alg1
1) BA LA 2) KEN1, KEN2, KEN3 OKU 3) IF KEN1 = KEN2 VE KEN1 = KEN3 VE KEN2 = KEN3 ISE GEN E KENARDIR YAZ :G T 5 4) GEN E KENAR DE LD R YAZ 5) DUR
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 tr i lemlere algoritmada saya yada dng 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 gre 1 den de farkl olabilir.
rnek.10.
Ekrana be tane say okunmaktad r. Okunan say lar n toplam n ve arp m n bulan algoritmay yaz n z.
rnek.10.
Alg1
1) BA LA 2) I = 0 : TOP = 0 : ARP = 1 3) SAYI OKU 4) I = I + 1 5) TOP = TOP + SAYI 6) ARP = ARP * SAYI 7) IF I < 5 SE G T 3 8) SAYILARIN TOPLAMI =, TOP YAZ 9) SAYILARIN ARPIMI =, ARP YAZ 10) DUR
rnek.11.
Ekrana be tane say okunmaktad r. Okunan say lar n ortalamas n , karelerinin toplam n ve say lar n toplamlar n n karesini bulan algoritmay yaz n z.
rnek.11.
Alg1
1) BA LA 2) I = 0 : TOP = 0 :KTOP = 0 3) SAYI OKU 4) I = I + 1 5) TOP = TOP + SAYI 6) KARE = SAYI ^2 7) KTOP = KTOP + KARE 8) IF I < 5 ISE G T 3 9 ORTA = TOP / 5 10) TKARE = TOP^2 11) SAYILARIN ORTALAMASI =, ORTA YAZ 12) SAYILARIN KARELER N N TOPLAMI =, KTOP YAZ 13) SAYILARIN TOPLAMLARININ KARES =, TKARE YAZ 14) DUR
rnek.12.
Ekrana 10 ki inin ad , soyad ve do um tarihi okunmaktad r. Okunan do um tarihlerine gre ya n bulan ad , soyad ile birlikte yazd ran algoritmay yaz n z.
rnek.12.
Alg1
1) I=0 2) AD,SOYAD,DY,BY OKU 3) I=I+1 4) YAS=BY-DY 5) AD,SOYAD,YAS YAZ 6) E ER I<10 SE 2YE G T 7) DUR
rnek.13.
Alg1
rnek.13.
Alg1
1) I=0 : YS=0 2) YAS OKU 3) I=I+1 4) E ER YAS=20 SE YS=YS+1 5) E ER I<4 SE 2YE G T 6) YA I 20YE E T OLANLARIN SAYISI=,YS YAZ 7) DUR
rnek.14.
Ekrana tane ya okunmaktad r. Okunan ya lardan 15 ile 25 aras nda olanlar n say s n bulan algoritmay yaz n z.
rnek.14.
Alg.1
1) I=0 : YS=0 2) YA OKU 3) I=I+1 4) E ER YA >=15 VE YA <= 25 SE YS=YS+1 5) E ER I<3 SE 2YE G T 6) YS YAZ 7) DUR
rnek.15.
Ekrana drt tane say okunmaktad r. Okunan say lardan pozitif olanlar n say s n bulan ve yazd ran algoritmay yaz n z.
rnek.15.
Alg.1
1) I=0 : PS=0 2) SAYI OKU 3) I=I+1 4) E ER SAYI > 0 SE PS=PS+1 5) E ER I<4 SE 2YE G T 6) POZ T FLER N SAYISI= , PS YAZ 7) DUR
rnek.16.
Ekrana drt tane say okunmaktad r. Okunan say lardan tek ve ift olanlar n say s n bulan algoritmay yaz n z.
rnek.16.
Alg1
1) I=0 : TEKS=0 : CIFTS=0 2) A OKU 3) I=I+1 4) K=(-1)**A 5) E ER K=-1 SE TEKS=TEKS+1 6) E ER K=1 SE CIFTS=CIFTS+1 7) E ER I<4 SE 2YE G T 8) TEKS,CIFTS YAZ 9) DUR
rnek.17.
Ekrana be tane say okunmaktad r. Okunan say lardan negatif ve ift olanlar n ortalamas n ayr ayr bulan, sonular n yazd ran algoritmay yaz n z.
rnek.17.
Alg1
1) I=0 : NEGTOP=0 : CIFTTOP=0 : NEGS=0 :CIFTS=0 2) A OKU 3) I=I+1 4) K=(-1)**A 5) E ER A<0 SE NEGS=NEGS+1: NEGTOP=NEGTOP+A 6) E ER K=1 SE CIFTS=CIFTS+1 : CIFTTOP=CIFTTOP+A 7) E ER I<5 SE 2YE G T 8) CIFTORTA=CIFTTOP / CIFTS 9) NEGORTA=NEGTOP / NEGS 10) CIFTORTA,NEGORTA YAZ 11) DUR
rnek.18.
Bir ma azada bulunan hal lar a a daki gibi grupland r lm t r. Ma azada 50 tane hal oldu una gre her birinden kaar tane oldu unu bulan ve yazd ran algoritmay yaz n z Makine Hal s (MHS) Elde Dokuma (EDS) Ekrana okunan hal n n trdr.
rnek.18.
Alg1
1) I=0 : MHS=0 : EDS=0 2) TR OKU 3) I=I+1 4) E ER TR=MHS SE MHS=MHS+1 : 6YA G T 5) EDS=EDS+1 6) E ER I<50 SE 2YE G T 7) MAK NE HALILARININ SAYISI=, MHS YAZ, 8) ELDE DOKUMA HALILARIN SAYISI=, EDS YAZ 9) DUR
rnek.19.
rnek.19.
Alg1
rnek.20.
3den 15e kadar olan ift say lar n ortalamas n bulan algoritmay yaz n z.
rnek.20.
Alg1
1) TOP=0 : CIFTS=0 : I=4 2) TOP=TOP+I : CIFTS=CIFTS+1 3) I=I+2 4) E ER I<= 15 SE 2YE G T 5) ORTA=TOP/CIFTS 6) ORTA YAZ 7) DUR