You are on page 1of 2

MEHMET KURT

ALGORTMA
kurt.mehmet@gmail.com

Biraz Daha
Abartsak m?
Artk ekmei, yrmeyi filan braksak da 3 ay sonra bilgisayar
dergisinde programlamaya bir girsek diyorum...
Ama giremiyorum.
aptmz birok eyi (yrmek vs.), satrnda var! Her birine ayr ayr yrmeyi
Y dnerek ve planlayarak yapmaya
kalktmzda kendi iimizde inanl-
yerletirirsek bizim halimiz acep nicedir?
Endie Ykl ve Yerinde Soruya Hak Verme
mas g bir brokrasi ile karlaacamzn ve Endieyi Giderme: ok doru, tam da ben
farkna geen yazlarmzda varmtk. (Ki bu soracaktm, laf azmdan aldn, benden ok
yazlar www.mehmetkurt.com adresinden yaayacaksn. Tam bu noktada Fonksiyon
temin edilebilmektedir.) Artk illaki vurgulan- veya Procedure olarak adlandrabileceimiz
mas ve kavranmas gereken bu adm adm yaplarla ilgilenmeliyiz. Programlama esnasn-
ve sfrdan anlayn bu yazmzla tamamla- da yaps temelde ayn olan baz ileri farkl
yp hedefe doru salam admlarla yol alaca- baz deerleri iin tekrarlayabiliriz. Mesela
z. Adm dedim de aklma geldi. (lk defa yrme ilemi (fonksiyonu, procedure) te-
adm demediimin farkndaym ama bir ekil- melde ayn ekilde cereyan eder ama farkllk
de de konuya girmem lazm deil mi?) Ge- arz eden deer nereye yrdndr. Bu-
en yazmzda, bakkala giderken yrmenin nu ifade etmek iin yle bir yap kullanalm:
nerede yer alacan ayarlayacamz beyan Yr (Kap): Burada esas fonksiyon Y-
etmitik. Geri bu bir seim vaadi deildi Rdr. Parantez iinde belirttiimiz ise onun
ama biz yine de szmzde duralm! deeri yani parametresidir. Elbette yrme
Sevin Nidalar: Yihhuu! ileminde baka farkllklar da vardr. Mesela
nemli Hatrlatma ve Voltran (Hey gidi gn- hz! 1 ok yava, 2 daha hzl ve saylarn ar-
ler hey!) Hissi: Bu noktada ocak ve ubat sa- tarak yrme hzn belirttiini dnelim.
ylarnn son iki algoritmasn hatrmza getir- Yr (Kap, 3): Bu da bize 3 iddetinde kap-
mek gerekiyor. imdi bu ikisini birletirece- ya doru bir yrme ilemi yaplacan belir-
iz. tiyor. Yani birden fazla farkl deer olabilir!
Endie Ykl ve Yerinde Bir Soru: Burada Doal olarak bunlar yrme algoritmasna
kayglandm bir husus var benim abi. Bizim koymak gerekir. imdi son kez yrme algo-
bu yrme olayn her yere yazmamz gereki- ritmasn yazalm ve bahsettiimiz deerleri
yor. Yani uraya giderim buraya giderim... nasl kullanacamza dikkat edelim.
Ve bu ifadeler neredeyse ilk algoritmann her Maziye Dair Bir Merak: Abi... Hi espri yap-

206 PC World MART 2006


ALGORTMA

myorsun? ifade de vard. Maksat spor olsun diye Ekmek bile alamadk yahu!
Ciddi Aklama: Buralar ok nemli ya, soruyorum, nerede bu bakkal? Hak Verme: Aslnda ben daha hi bir
konu dalmasn diye yapmyorum. Ge- Ancak Dehete Kaplm ve Ne Dedii- ey sylemedim. Dnsene, bakkala
en saydaki son algoritma u ekilde nin Farknda Olmayan Bir nsann Vere- giderken sakz ineyebilirsin, bakalar
dzenlensin: bilecei Bir Cevap: Niye sordun ki imdi ile konuabilirsin, yamur varsa emsiye
abi, aaya iniyorsun, sada dorudan tutarsn, gne varsa gzln takar-
EYLEM YR (HEDEF YER, HIZ) git, ilk sadan sonraki ikinci sol sokak- sn, kardan araba geliyorsa kenara e-
HEDEF YER varlacak olan yerdir. ta. kilirsin (gelmiyorsa yolun ortasndan gi-
HIZ ileri gidiin derecesidir. Anlayl Tavr: Onu biliyorum. Sana decek halin yok tabi), uzun zamandr
1. Bulunduum HEDEF YER ise dur, de- onu sormuyorum! Bu bilgisayar bebek grmediin birini aniden grebilirsin ve
ilse devam et. (Sonraki adma ge) gibi. Nereden bilecek bunu? Nerede ol- yanna koarsn, grmek istemediin bi-
2. Sa ayan kaldr. duunu sylemedik ki? En azndan bu rini grrsen yolunu deitirirsin... Akl-
3. Sol ayandan HIZ iddetinde daha blgenin corafi yapsn retmek la- mza gelen ve gelmeyen bir sr istem
ileriye uzat. zm demek istiyorum! d hareketin olabilmesini hesap etmek
4. Aa indir. aresizlik: Yaa.. Alayacam imdi ya! gerekiyor. Programclkta da byle.
5. Yere bastnda bulunduun yer HE- Ben programlama renemeyeceim Programn ileyii esnasnda karmza
DEF YER ise Adm 9a git, deilse de- galiba! neler kabileceini iyi dnmek ve
vam et. (Sonraki adma ge) Umut Dolu Yarnlar Hatrlatma: Hayr, aklara yer vermemek gerekiyor.
6. Sol ayan kaldr ve sa ayandan reneceksin. Bunlar sana ocuk oyun- Felsefe: Hakikatten de farknda olma-
HIZ iddetinde daha ileriye uzat. ca gibi gelecek, kendi web program- dan ne kadar ok kontrol yapyoruz
7. Aa indir. n, kendi adres defterini, kendi hesap kendimizde! Merakla Beklenen Algorit-
8. Yere bastnda bulunduun yer HE- makineni yapacaksn, nice sertifikalar ma: Bak o kadar yazdk, izdik ama ne-
DEF YER ise Adm 9a git, deilse Adm seni bekliyor! ticede yine oook eksik bir bakkala gi-
2ye git. Mutluluk Gzyalar: Saolasn abi, asla di algoritmas yazyoruz:
9. En son yere basan ayann yanna midimi kesmeyeceim. Devam edelim
gerideki dier ayann yanna HIZ id- hadi! TANIMLAMALAR YAPILIR (Eh ne kadar
detinde getir ve dur. Tekrar Korku Artrc Sylemler: Bakka- yerimiz kald ki hepsini yazalm! Bura-
Yr (Kap) dediimizde, HEDEF YER ln nerede olduunun corafi bilgisi bir daki tanmlamalara aada kulland-
yazlan yerlere KAPI gelmi gibi olacak. ekilde ifade edilse bile oraya nasl gi- mz tm fonksiyonlar dahildir.)
Artk bu tanmlamay yaptktan sonra, deceimize dair bir takm retiler de 1. Paray al.
her hangi bir yere yryecek iken me- gerekli. Neyse ki biz o kadar derin su- 2. Yr (DaireKaps,2)
rammz tek satrla ifade edebileceiz. larda gezmeyeceiz bu blmde. 3. k(Kap) - Daireden kyoruz.
Erken Rahatlama: Ohh bea! Sevin Nidalar: Yihhuu! Zaten suda ge- 4. Basamak n(ApartmanKaps, 2)
Bir Soru: Rahatladn ama bamza ne zilmez abi, yzlr. 5. k(Kap) - Apartmandan kyoruz.
belalar atnn farknda deilsin! Korku Artrc Baka Sylemler: te 6. Yr(Sadaki lk Sokak Girii, 3)
Korku, Endie ve Daha Neler Neler: Es- yandan, bakkala gittiimizde al veri 7. Dn(Sa Ke)
tafurullah abi, ben ne yaptm! Hay Al- iin dahi bir fonksiyon oluturulabilir. 8. Yr(Soldaki kinci Sokak Girii, 3)
lahm sen bizi koru! Bunun iin de baz deerler (paramet- 9. Dn(Sol Ke)
Korku Artrc Aklamalar: lk saymz- reler) vereceimiz para, alacamz 9. Yr(Bakkal, 3)
daki son algoritmada, kapdan karm mal, para st vs. olabilir. Kabaca yaza- 10. Alveri Yap(1 YTL, Ekmek, 2, 40
diye bir ifade vard. Ya kap kapalysa? lm: Ykr)
Demek ki kmadan nce onu kontrol EYLEM ALI-VER YAP(Verilen Para, 11. GeriDn(Apartman)
etmek ve kapalysa kapy amak gere- Alnan Mal, Miktar, Para st) 12. A(Kap)
kiyor. Kapdan yryerek ktk diyelim 1. Selam ver (Eheh.. hayrl iler dile- 13. Basamak k (Daire)
(Nasl olsa nasl yryeceimizi biliyoruz mek lazm di mi ama?) 14. A(Kap)
ya!). Merdivenlerden ineceimizi beyan 2. ALINAN MAL istiyorum, MKTAR ka- 15. Ekmei evdekilere ver.
ettik. Nasl ineceiz? Merdivenden nasl dar.
ineceimizi tanmlamadk ki? Onun iin 3. VERLEN PARAy uzat. Heyecanl Soru: Bitti mi abi, ha, bitti
BASAMAK N gibi bir fonksiyon gereki- 4. ALINAN MAL MKTAR kadar al. mi?
yor elbette. 5. PARA ST al. Temkinli Cevap: Bitti desem de yeri-
Dehet inde leri Grl Bir Kavra- 6. Tekrar hayrl iler dile ve k! dir... Bitmedi desem de yeridir.
ma Belirtisi: Aman Allahm! Abi onun Temkinli Cevaba Daha Heyecanl Ce-
k da var! Hatta ktktan sonra, geldiimiz yer- vap: Nasl yani?
Kavrama Belirtisine Destek ve Korku den geri dnmeye ynelik bir baka Esrarengiz Bir Hava: Bilmem, sence ba-
Artrc Soru ve Aklamalara Devam: fonksiyon daha dnebiliriz. Buna Ge- ka ne syleyebiliriz?
Doru! Demek ki ilerisi iin BASAMAK ri Dn() diyelim. Dayanlmaz Heyecan ve steleme: Sy-
IK gibi bir fonksiyon da tanmlamak Kesme ve Serzeni: Ama abi, program- le, ne olur syle, ltfen!
gerekiyor. Yanl hatrlamyorsam ilgili lamaya geeceiz diyorsun ama daha Son Dakika Gol: Gelecek sayda gr-
algoritmada bakkala giderim diye bir bir sr korkutucu eyler sylyorsun. rz.

MART 2006 PC World 207

You might also like