Professional Documents
Culture Documents
indekiler
indekiler...................................................................................................................................2 Genel Programlama Bilgisi.........................................................................................................3 Tanmlar......................................................................................................................................5 Bilgisayar Nedir?................................................................................................................5 Bilgisayar Organizasyonu?.................................................................................................5 Bilgisayarn Tarihesi..........................................................................................................6 Bilgisayar Trleri................................................................................................................7 Problem Nedir?...................................................................................................................7 Problem zm.................................................................................................................7 Program Nedir?...................................................................................................................8 Programlama Nedir?...........................................................................................................8 Algoritma Nedir?................................................................................................................8 Ak izgesi Nedir?............................................................................................................8 Programlama Dili Nedir?....................................................................................................8 Derleyici Nedir?..................................................................................................................9 Yorumlayc Nedir?.............................................................................................................9 Yazlm Gelitirme....................................................................................................................10 Hata Yakalama ve Ayklama.....................................................................................................13 Algoritmalar..............................................................................................................................15 Ak izgeleri...........................................................................................................................18 Aritmetik ve Mantksal ifadeler................................................................................................21 Aritmetik fadeler..................................................................................................................21 Aritmetik Operatr............................................................................................................21 Aritmetik Operand............................................................................................................22 Deer Aktarma deyimi......................................................................................................22 Mantksal ifadeler.................................................................................................................22 Karlatrma Operatr....................................................................................................22 Mantksal Operatr...........................................................................................................22 Deiken ve Dizi Tanmlama....................................................................................................24 Sabit Nedir?...........................................................................................................................24 Tam Say Sabitleri.............................................................................................................24 Kesirli Say Sabitleri.........................................................................................................24 Dizgi Sabitleri...................................................................................................................24 Deiken Nedir?....................................................................................................................24 Dizi Nedir? ...........................................................................................................................24 Algoritma altrma.................................................................................................................26 Say Sistemleri..........................................................................................................................27 Tabandan Tabana evrim......................................................................................................27 kili Say isteminden onlu say sistemine evrim..............................................................27 Onlu Say isteminden ikili say sistemine evrim.............................................................27 Dier Say Sistemleri........................................................................................................28 Veri leme................................................................................................................................29 Algoritma rnekleri ve Sorular................................................................................................30
69/17.10.2007 01:51:28 PM
69/17.10.2007 01:51:28 PM
Dikkat ettiyseniz Programlama dilinde alternatiflerden bahsettik ancak Programlamann alternatifi bulunmamaktadr. Yani bir program yazlacaksa mutlaka programlamann kurallarna gre yazlmaldr.
69/17.10.2007 01:51:28 PM
Tanmlar
Bu ders notlarnn daha iyi anlalabilmesi iin u tanm ve kavramlarn bilinmesinde fayda bulunmaktadr.
Bilgisayar Nedir?
Verileri leyerek zet bilgiler ekline sokabilen, bu veri ve bilgileri yksek kapasitelerde saklayp baka ortamlara iletebilen elektronik cihazlardr. Bu ilemleri yaparken ok yksek hzlarda ve bkmadan-usanmadan tekrarl olarak ayn ileri yapan bir cihazdr. Ancak tek bana bir Bilgisayar donanm bu ileri gerekletirecek durumda deildir. Bu ilemler donanm tarafndan yaplsa da asl i yazlmlar tarafndan gerekletirilmektedir.
Bilgisayar Organizasyonu?
Bir Elektronik Bilgisayar yukar ekildeki gibi temel birimlere sahiptir. Bu ekilde bir nceki konuda bahsettiimiz giri, k ilemleri, veri ileme ve veri saklama ilemleri gerekletirilir. Klavye, Fare, mikrofon, kamera vb. cihazlardan biri veya daha fazlasndan oluur. Veri ve komutlarn bilgisayara yollanmasn salar. Veri, komut ve programlarn sakland donanmlar temsil eder. Bellek Birimi Ana Bellek ounlukla RAM olarak anlr ve SIMM gibi donanmlarla belirlenir. Yan veya kincil bellek ise Floppy ve sabit diskleri ifade eder ve bilgilerin daha kalc saklanmasn salayan alanlar temsil eder.
69/17.10.2007 01:51:28 PM 5
Giri Birimi
Aritmetik-Mantk Birimi C P U
Bilgisayardaki tm Aritmetik ve Mantksal ilemlerin yapld birimdir. Tm ilemleri yapan ana birimdir. Bilgisayar programnn almasn denetleyen, programda yaplan hesaplamalara gre hangi ilerin yaplacana karar veren birimdir. Makine diline evrilmi bir programda komutlar teker teker ve srayla Ana ilem birimine getirip yorumlar ve sonuta komutu altrr. Bilgisayar ortamnda oluan verilerin d ortama verilmesini salayan birimlerdir. Ekran, yazc gibi birimlerdir.
Denetim Birimi
k Birimi
Bir Programc genel olarak bu birimlerin hangilerinin ne ie yaradn ve neleri temsil ettiini bilmelidir. zellikle Aritmetik-Mantk ilem birimi ve Denetim birimi Bir bilgisayarn beynini oluturduu iin nasl davrandn iyi bilmek zorundadr.
Bilgisayarn Tarihesi
Bu konuda ok deiik ve eitli kaynaklar bulmak mmkn olabilir ancak yle basit bir kronolojik sra gemek mmkndr M.. 500 1642 1827 1941 1944 1945-54 1955-64 1965-71 1971-90 Abaks Pascaln Mekanik Toplama Makinesi Babbage'in karma makinesi kili>kili Mekanik Hesaplayc (Zuse) Ondalk Elektromekanik Hesaplayc (Aiken) lk Kuak Vakum Tpler ve nlar kinci Kuak Tranzistrler ve Manyetik Bellekler nc Kuak Tmleik Devreler Drdnc Kuak VLSI Devreler
69/17.10.2007 01:51:28 PM
IBM Pc & MS-DOS MAC Paralel lemciler, Yapay Zeka, nternet ve WWW
Bilgisayar Trleri
Bilgisayarlar kullanm amalarna gre byklk ve kapasite bakmnda u ekilde snflandrlabilirler. Sper Bilgisayarlar Mainframe tipi Bilgisayarlar Workstation tipi Bilgisayarlar ( stasyonlar) Mikro Bilgisayarlar Kiisel Bilgisayarlar
Problem Nedir?
Bir ilemin, otomasyonun yada bilimsel hesaplamann bilgisayarla zlmesi fikrinin ortaya kmasna problem denir. Bu tip fikirlerde insanlarn bu sorunlar beyinle zmeleri ya imkanszdr ya da ok zor ve zaman alcdr. Bu tip bir sorunu bilgisayarla zebilme fikrinin ortaya kmas bir bilgisayar probleminin ortaya kmasna neden olmutur. Bazen de bir iletme veya ynetimin otomasyonunu salamak amac ile bu tip problemler tanmlanr.
Problem zm
Problemi zebilmek iin ncelikle sorunun ok net olarak programc tarafndan anlalm olmas gerekir. Tm ihtiyalar ve istekler belirlenmelidir. Gerekiyorsa bu ilem iin birebir grmeler planlanmal ve bu grmeler gerekletirilmelidir. Problemin zmne ilikin zihinsel altrmalar yaplr. Bu altrmalarn Bilgisayar zmne yakn olmas hedeflenmelidir. Bir sorunun tabii ki birden fazla zm olabilir. Bu durumda bilgisayar ile en uygun zm seilmelidir. nk bazen pratik zmler bilgisayarlar iin uygun olmayabilir. Oluturulan zm Algoritma dediimiz admlarla ifade edilmelidir. Bu algoritmann daha anlalabilir olmas iin Ak izgesi oluturulmaldr. Uygun bir programlama dili seilmeli ve oluturulan algoritma ve ak izgesi bu programlama dili aracl ile bilgisayar ortamna aktarlmaldr.
69/17.10.2007 01:51:28 PM
Oluturulan program bir takm verilerle ve mmknse gerek ortamnda test edilir. Oluabilecek sorunlar ilgili ksmlar tekrar gzden geirilerek dzeltilir. Bu admlar defalarca gerekletirilmek zorunda kalnabilir.
Program Nedir?
Problem zm ksmnda anlatlan admlar uygulandktan sonra ortaya kan ve sorunumuzu bilgisayar ortamnda zen rne Program denir. Baz durumlarda bu rne yazlm denebilir.
Programlama Nedir?
Problem zmnde anlatlan admlarn tmne birden programlama denilebilir. Ancak gerekte ilk paragrafta anlatlan ksm ounlukla sistem analizi veya sistem zmleme olarak anlatlr. Dier admlar Programlama diye tanmlanabilir. Ancak Son paragrafta anlatlan adma ksaca test aamas da denir. ounlukla ok iyi tanmlanm bir sorunun zmne dair admlar ile zmn oluturulup bunun bir programlama dili ile bilgisayar ortamna aktarlmas Programlama diye adlandrlabilir.
Algoritma Nedir?
Bir sorunu zebilmek iin gerekli olan sral mantksal admlarn tmne denir. Doal dille yazlabilecei iin fazlaca formal deildir. Bir algoritma iin aadaki ifadelerin mutlaka dorulanmas gereklidir. Her adm son derece belirleyici olmaldr. Hi bir ey ansa bal olmamaldr. Belirli bir sayda adm sonunda algoritma sonlanmaldr. Algoritmalar karlalabilecek tm ihtimalleri ele alabilecek kadar genel olmaldr.
Ak izgesi Nedir?
Bir algoritmann daha grsel gsterimidir. izgiler, Drtgen, daire vb. geometrik ekillerle algoritmann gsterilmesini salar. Doal dille yazlmad iin daha formal olduu dnlebilir.
69/17.10.2007 01:51:28 PM
Derleyici Nedir?
Bir programlama dili ile bilgisayara aktarlan programn bilgisayarn anlayabilecei Makine Diline evirmeyi salayan ve yazlan programda sz dizim hatalarnn olup olmadn bulan olup olmadn bulan yazlmlardr. Her Programlama dili iin bir derleyici olmas gerekmektedir.
Yorumlayc Nedir?
Derleyici gibi alan ancak yazlm programlar o anda Makine diline eviren yazlmlardr. Bu tr bir yazlmda Programn Makine dili ile oluturulmu ksm bilgisayarda tutulmaz. Programn her altrlmasnda her adm iin Makine dili karlklar oluturulur ve altrlr.
69/17.10.2007 01:51:28 PM
Yazlm Gelitirme
Yazlm Gelitirilirken Bir Programc ve Yazlm Gurubunun takip edecei admlar u ekildedir.
Bu izgeden anlalaca gibi admlardan birinde bir sorunla karlalrsa bu sorunu zebilmek iin bir nceki adma geri dnmek gerekecektir. Bu geri dn bazen bir ka adm olabilir.
69/17.10.2007 01:51:28 PM 10
Sistem Analizi : Sorunun zlebilmesi iin tamamen anlalmasn salayan almalardr. Tasarm : steklerle ilgili olarak belirlenen bir takm zmlerin tanmlanmasdr. Programlama Stili : Her yiidin yourt yiyii farkldr. Ayn ekilde her programc programndaki mant farkl kurar bu her programcnn kendine zgn bir stili var anlamna gelir. Ancak bunun yannda Her programcnn programn sal bakmndan dikkat etmesi gereken eyler vardr. rnein kodlar ak olmaldr. Kullanlan deikenler kullanldklar amac anlatr tarzda isimlendirilmelidir. Program ii dokmantasyona mutlaka nem verilmelidir. Algoritma : zmn admlarla ifade edilmesidir. Ak izgesi : Algoritmann ekillerle ifade edilmesidir. Programlama Dili Seimi : zmn netlemesinden sonra yaplacak ilemleri kolay bir ekilde bilgisayar ortamna aktaracak dilin seilmesidir. nemli olan bu dilin zelliklerinin programc tarafndan iyi bilinmesidir. Programn Yazlmas : Seilen Programlama dilinin kurallar kullanlarak program yazlmaya balanr. bu amala ounlukla sade bir metin editr kullanlr. Baz durumlarda Syntax highlighting denilen bir zellie sahip olan daha akll editrler de kullanlabilir. Bazen de editr ile Programlama dilinin derleyicisinin, balaycsnn hatta hata ayklaycsnn i ie bulunduu IDE (Integrated Development Environment) denilen trde derleyiciler kullanlr. Derleme : Programlama Dili ile yazlm programn yazm hatalarnn olup olmadnn kontrol edilmesini ve ara kod olarak Obje kodun retilmesini salama admdr. Balama : Derlenmi ara kod dier ktphane ve para programlarla birletirilerek Makine dilinde programn oluturulmas admdr. Ancak baz IDE ortamlarda ve derleyicilerde Derleme ve Balama bir btndr ve beraberce halledilirler. Programcnn ayrca bir balama ilemi yapmas gerekmez ilemi yapmas gerekmez. altrma : Oluturulan Makine dili Programnn altrlmas admdr. Yukardaki admlarn hepsi yolunda gittiyse program sorunsuz olarak alabilmelidir. Test : Programn Mantksal olarak test edilmesini salar ve ierik olarak her ihtimal iin doru sonular retip retmediini kontrol etmenizi salar.
69/17.10.2007 01:51:28 PM
11
Yaam Dngsnn Salanmas : Yukardaki Ak izgesi dikkat edilirse aslnda bir dngdr. Hatta test aamasnda sorun kmazsa bile Sorunun tanmnda yani ihtiyalarda baz deiiklikler olursa admlar batan aa tekrar incelenmek zorunda kalnr. Bu izgeye bir Yazlmmn Yaam Dngs de denilebilir. Bu izimde Yazlmn Bakm sreci gz nne alnmamtr.
69/17.10.2007 01:51:28 PM
12
Bir Programn bilgisayar banda geen gelitirme sreci yukardaki gibidir. Bu izimde krmz-turuncu renkle gsterilen ksmlar hata durumlarn gstermektedir. Syntax Error : Yazlan programda programlama dili kurallarna aykr bir takm ifadelerden dolay karlalabilecek hatalardr. Dzeltilmesi son derece basit hatalardr. Hatann bulunduu satr derleyici tarafndan rapor edilir. Hatta baz derleyiciler hatann ne olduunu ve nasl dzeltilmesi gerektiini dahi bildirebilirler. Bazen Syntax Error tipi hatalar Balama zamannda da ortaya kabilir. Eer bir derlemede Syntax Error alnd ise obje kod retilememitir demektir. Soru: Bir Derleyici hatann nasl dzeltileceini bildirebildiine gre kendisi niin dzeltmemektedir? Run-time Error : Programn altrlmas srasnda karlalan hatalardr. Programcnn ele almad bir takm aykr durumlar ortaya ktnda programn iletim sistemi tarafndan kesilmesi ile ortaya kar. Bu tip hatalarda hata mesaj ounlukla alan iletim sisteminin dili ile verilir. Eer bu tip hatalar kullanc ele almsa, program programcnn verecei mesajlarla ve uygun ekilde sonlandrlabilir. Bu tip hatalarn nerelerde ve hangi artlarda ortaya kabileceini bazen kestirmek zor olabilir. ounlukla iletim sistemi ve donanm kaynaklar ile ilgili sorunlarda bu tip hatalar ortaya kar demitik. rnein olamayan bir dosya amaya almak, var olan bir dosyann zerine yazmaya almak, olmayan bir bellek kaynandan bellek ayrtmaya almak, olmayan bir donanma ulamaya almak vs. vs. vs. Logical Error : Karlaabileceiniz en tehlikeli hatadr. Programlama mantnda bir takm eylerin yanl dnlmesinden kaynaklanr. Hata test aamasnda ortaya kar. Hesaplanmas gereken veya bulunmas
69/17.10.2007 01:51:28 PM
13
gereken deerlerin eksik veya yanl hesaplanmas ile tespit edilir. Bu sorunun giderilebilmesi iin Tasarm hatta zmleme aamasna geri dnlmesi gerekebilir. Bazen bu hatann nereden kaynaklandn bulabilmek ok zor olmaktadr. Bug : Logical Error diyebileceimiz Mantksal hatalara verilen adlar bug yani bcek diye de tanmlanm olabilir. Bu tip hatalar eer ok net deil ve zamanla ortaya kabiliyor ise veya nedeni ok net olarak anlalamamsa bug diye adlandrlr. Gerek serbest yazlm gerek ticari yazlmlarn tmnde bug dediimiz mantksal hatalar bulunur. nk hatasz program yazabilmek ok zordur. lk seferde yazlan bir programn tamamen hatasz olmasn beklemek son derece hataldr. Gnmzde en mehur yazlm firmalar bile yazlmlarnda bug olduunu kabul eder ve zaman zaman bu buglar giderebilmek iin ya yazlmlarna yama yazlm retirler yada o yazlmn yeni bir versiyonunu piyasaya srerler. Debug : Mantksal hatalar giderebilmek ve yazlmdaki bug'lar bulabilmek iin yaplan ilemin addr. Genellikle yazlan programn adm adm ve denetim altnda altrlmasdr. Programn her admnda ilgili deikenlerin hangi deere sahip olduunu grmeyi salar. ve anormal bir durumu daha kolay izleyip bulmanz salar. Bu ilemi gerekletirebilmek iin baz IDE ortamlarnda debugger dediimiz yardmc komut veya yaz
69/17.10.2007 01:51:28 PM
14
Algoritmalar
Bir bilgisayar program aslnda sra dzensel olarak tanmlanm bir dizi komuttan baka bir ey deildir. Bu adan bizim yazmaya alacamz programda bir dizi komut yani eylem topluluudur. Her programda bu eylemler yazldklar srada gerekletirilir veya altrlrlar. Aslnda bizim gnlk hayattaki yaant tarzmz dahi dzenli olarak bir takm ilemlerin sra ile yaplmas eklindedir. Yani bir i yapabilmek iin bir takm alt i veya olaylar pe pee gerekletiririz. Algoritmann tanmn daha nce vermitik burada bu tanm tekrar etmek faydal olacaktr. Bir sorunu zebilmek iin gerekli olan sral mantksal admlarn tmne algoritma denir. Bir algoritmadan beklenen bir takm zellikler olduunu da yine daha nceki tanmlar blmnde bahsetmitik. Biz imdi mmkn olduu kadar bu tanm ve zelliklerden yola karak rneklerle bir ka algoritma vermeye alacaz. ncelikle bir ev hanmnn pasta yapmak istediini varsayalm. Bu pastann yaplabilmesi iin gerekli bir takm ilemler ve alt admlar bellidir. bir ev hanm da sra ile bu admlar uygulayarak bu pastay yapar. yle ki: 1. 2. 3. 4. 5. 6. 7. 8. Pastann yapm iin gerekli malzemeleri hazrla Ya bir kaba koy ekeri ayn kaba yan zerine koy Ya ve ekeri rp Karmn zerine yumurtay kr Tekrar rp Kvama geldi mi diye kontrol et a. Kvaml ise 9. adma devam et b. Deilse 6. adma dn. 9. Karma un koy 10.Karma vanilya, kabartma tozu vb. koy 11.Karm Kvama gelinceye kadar rp 12.Pastay Kek kalbna koy 13.Yeteri kadar snan frna pastay koy 14.Piimi diye kontrol et 15. a. Pimi ise 16. adma devam et b. Deilse 14. adma dn 16.Keki frndan kart 17.Frn kapat 18.Kekin kapat 19.Kekin soumasn bekle 20.Keki servis edebilirsin.
69/17.10.2007 01:51:28 PM
15
Bu algoritma gnlk hayattan bir rnek. Gerekte biz her iimizi algoritmik olarak yaparz ancak bunu farkna varmayz. Yukardaki algoritmay inceleyecek olursak bir kekin yaplmas iin gerekli tm admlar sra ile yer alm durumda. Geri algoritma anlatacamz konularn daha iyi anlalabilmesi iin biraz farkl ele alnmtr ama gerek bir Pasta yapm aamasn ierir. Bu algoritma ve dier tm algoritmalar iin bilmemiz gereken baz konular bulunmaktadr: Her adm son derece belirleyici olmaldr. Hi bir ey ansa bal olmamaldr. Belirli bir sayda adm sonunda algoritma sonlanmaldr. Algoritmalar karlalabilecek tm ihtimalleri ele alabilecek kadar genel olmaldr. Algoritmada algoritmann genel ileyiini etkileyebilecek hi bir belirsizlik olmamaldr. (Bu rnekte yle bir belirsizlik var. Bir frnn yeteri kadar sna bilmesi hangi koula baldr, bu frn ne zaman alm olmaldr ve ka dereceye ayarlanm olmaldr. gibi...) Algoritmada baz admlar yer deitirebilir . Ancak bir ok admn kesinlikle yer deitiremeyeceini bilmeliyiz. Yanl sradaki admlar algoritmann yanl almasna neden olacaktr. (9 ve 10. adm deitirilebilir. 2-3. admlar yer admlar yer deitirebilir.) Ancak 13-16. admlar kesinlikle yer deitiremezler. Peki Bilgisayarda zlecek bir sorunu nasl algoritma ile ifade ederiz? Bunun iin ncelikle bir sorun tanmlayalm. Balang ta basit olmas iin yle bir problem zerinde dnelim: Bilgisayara verilecek iki sayy toplayp sonucu ekrana yazacak bir program iin algoritma gelitirmek isteyelim. Sorun son derece basit ancak sistem tasarmnn net yaplabilmesi iin sorun hakknda anlalamayan tm belirsiz noktalar akla kavuturulmaldr. rnein saylar bilgisayara nereden verilecek, Klavye, Dosya veya belki baka bir ortam. Bu ve buna benzer soru ve tereddtleriniz varsa sorun sahibine bunlar sormal ve sistem analizi yapmalsnz. Sonra bulacamz zm algoritma haline dntrebiliriz. 1. 2. 3. 4. 5. BALA A saysn oku B saysn oku TOPLAM=A + B ilemini yap TOPLAM deerini ekrana yaz
6. SON
69/17.10.2007 01:51:28 PM
16
Biraz daha karmak bir sorun yle olsun: Klavyeden girilecek iki saydan byk olanndan kk olann karp sonucu ekrana yazacak program iin bir algoritma gelitiriniz. A. B. C. D. BALA A saysn oku B saysn oku Eer A byktr B SONUC=A-B Deilse SONUC=B-A E. SONUC deerini ekrana yaz F. SON Gerekte bir algoritma genellikle ana blmden oluur. Bunlar : Algoritmann giri ve ilk ilemlerinin yapld blm Dngsel bir blmn olduu kesim. Bu blm iterasyonlarla bir ilemin srekli tekrar edilerek sonuca ulamay salayan blmdr. Son ilemlerin yapld blmdr. Bu blm elde edilen sonularn ekrana yazlmasn salayan blmdr.
rnein birden Klavyeden girilen bir n deerine kadar saylar toplayan ve sonucu ekrana yazan bir algoritmay gelitirelim. 1. 2. 3. 4. 5. 6. 7. BALA N OKU T=0 X=1 T=T+X X=X+1 EER X<=N SE 5. ADIMA GT
8. T YAZ Bu algoritmalar olduka basit algoritmalar olup algoritma kavramnn yerlemesini salayan rneklerdir.
69/17.10.2007 01:51:28 PM
17
Ak izgeleri
Bir algoritmann ekillerle grsel gsterimidir. Dikkat edildiyse algoritma doal dille yazld iin herkes tarafndan anlalamayabilir ya da istenmese de baka anlamlar karlabilir. Ancak ak izgelerinde her bir ekil standart bir anlam tad iin farkl yorumlanp anlalamamas mmkn deildir. Bir algoritmann ifade edilebilmesi iin kullanlan ekiller ve anlamlar unlardr:
Bir algoritmada aritmetik ilem yaplmasn salayan ekildir. Bu drtgen kutu ierisine yaplmak istenen ilem yazlr. Tek girili ve tek kl bir ekildir.
Algoritmada bir bilginin ekrana yazlaca konumu gsteren ekildir. Ekrana yazlacak ifade ya da deiken bu ekil ierisine yazlr.
Bir algoritmada baka bir yerde tanmlanm bloun yerletii konumu gsteren ekildir. Kutu ierisine bloun ad yazlabilir.
Klavyeden Bilgisayara bilgi girilecek konumu belirten ekildir. Girilecek bilginin hangi deikene okunacan kutu ierisine yazabilirsiniz.
69/17.10.2007 01:51:28 PM
18
Giri k komutunun kullanlaca yeri belirler ve kutu ierisine hangi deikeni ve OKU mam YAZ m yaplacan belirtmeniz gerekir
Bir algoritmann birden fazla alana yaylmas durumunda balant noktalarn gsteren ekildir. Tek girili veya tek kl olarak kullanlrlar. Bir ilemin belli bir sayda veya belli bir koul doru olduu srece tekrar edilmesini salayan dng komutunu gsteren ekildir. Bu dngde altgen ierisine ya koul yada dngnn balang, adm ve sonlanma deerlerini belirtebilirsiniz. DNG olarak belirlenen blokta da tekrar edilmek istenen komutlar yer almaktadr.
Bir algoritmada bir kararn verilmesini ve bu karara gre iki seenekten birinin uygulanmasn salayan ekildir. burada ekenar drtgen ierisine kontrol edilecek mantksal koul yazlr. Program ak srasnda koulun doru olmas durumunda "Evet" yazlan ksma Yanl olmas durumunda "Hayr" yazlan ksma saplr. Tek girili ve ift kl bir ekildir.
69/17.10.2007 01:51:28 PM
19
BALA
Programlamaya Giri ve Algoritmalar Ders Notlar
N Bu ekiller kullanlarak algoritma ile oluturulan zmler ak izgelerine evrilir. Bu ekiller herkes tarafndan anlalabilir ve doru olarak X=1 yorumlanabilir bir zellik arz ederler. T=0 BALA A=1
T=T+X
X=X+1
B=1
X<=N H T
C=A+B
C>100 H C
SON
SON A=B
B=C
Bu rnekte 1den N deerine kadar saylar toplayp ekrana yazan bir ak izgesi izilmitir.
69/17.10.2007 01:51:28 PM
20
Aritmetik fadeler
Bir programn istenilen ileri yerine getirebilmesi iin hesap yapabilmesi ve bu hesaplar sonucunda elde edilen deerleri saklayabilmesi gerekmektedir. Genel olarak tm programlama dillerinde aritmetik ilemler u ekilde tanmlanmtr: Deer|Deiken {aritmetik operatr} Deer|Deiken Bu tip bir gsterimde Deer denilen kesim sabit bir deeri temsil eder. Deiken ise ierisinde her an farkl bir deer tutabilecek bir tanm ifade eder. Aritmetik Operatr ise aritmetik ilemin zn oluturan bir iletir.
Aritmetik Operatr
Ksaca drt ilem olarak da ifade edebileceimiz ilelerdir. ounlukla drt tanedirler ve cebirde kullanlan ncelikleri ayn ekilde kullanrlar. * / + arpma ilemini gsteren iletir. Blme ile e nceliklidir. Blme ilemini gsteren iletir. arpma ile e nceliklidir. Toplama ilemini gsteren iletir. karma ile e nceliklidir. karma ilemini gsteren iletir. Toplama ile e nceliklidir.
Temel olarak bu ileler her programlama dilinde bulunur. ncelikleri yukardaki srada olduu gibidir. E ncelikli aritmetik ifadeler bulunursa bu ifadelerde ilem soldan saa doru yaplr. Bu ilem nceliklerini deitirmek iin her programlama dilinde "(", ")" (Parantez a-kapa) ifadelerini bulabilirsiniz. Bunlardan hari olarak bazen z alma operatrlerinden bahsedilebilir. bazen de mod operatr ve tam blme operatr gibi deiik ve standart olmayan operatrler yar alabiliyor.
69/17.10.2007 01:51:28 PM
21
Aritmetik Operand
Aritmetik ifadelerde ileme giren taraflarn her birine aritmetik operand yani aritmetik ilenen denir. yukardaki tanmda Deer|Deiken ikilisinin her biri ilenen yani operand tanmn salar. Bir aritmetik ifade de bir ift operand ve bir operatr minimum olmas gereken ifadelerdir. Ancak daha fazla aritmetik ilenen ve ile olabilecektir. rnein A * B + (12 + B) ilemi de bir aritmetik ifadedir.
Mantksal ifadeler
Bir deerin baka bir deer ile karlatrlmas sonucu doru veya yanl sonu elde edebilen ifadelerdir. Mantksal operatrler ve karlatrma operatrlerinin deiik alternatiflerle bir araya gelmesinden oluur ve u ekilde ifade edilir: Deer|Deiken|Aritmetik ifade {Karlatrma Operatr} Deer|Deiken|Aritmetik ifade Karlatrma Deimi {Mantksal operatr} Karlatrma Deimi
Karlatrma Operatr
ki deer veya aritmetik ifadeyi bir biriyle karlatrmay salayan sembollerdir. = >, >= <, <= <> ki deerin eit olup olmad karlatran iletir. ki deerden soldakinin sadakine oranla byk olup olmadn veya byk eit olup olmad kontrol eden operatrdr. ki deerden soldakinin sadakine oranla kk olup olmadn veya kk eit olup olmad kontrol eden operatrdr. ki deerin farkl olup olmadn karlatrlan iletir.
A>=8 ifadesi a deikeni iindeki deeri 8 den byk m diye karlatrr. A<>12 ifadesi a deikeni iindeki deer 12den farkl m diye karlatrr.
Mantksal Operatr
69/17.10.2007 01:51:28 PM
22
Birden fazla mantksal karlatrma deyiminin birletirilmesini salayan ilelerdir. VE, VEYA gibi ifadelerdir. Bu operatrler mantksal ifadelerden iki veya daha fazlasnn mantksal doruluk tablolarna gre birletirilmesini salar. VEYA iin doruluk tablosu P D D Y Y VE iin doruluk tablosu P D D Y Y D Y D Y Q D Y Y Y P VE Q Q D Y D Y P VEYA Q D D D Y
Son mantksal operatr DEL operatr olup tek ilenen alr ve ald ilenenin mantksal deilini alr. Yani doru olan deeri yanla yanl olan deeri doruya evirir. P D Y DEL(P) Y D
rnein bir deiken iindeki deerin 1 ile 10 arasnda olup olmadn kontrol eden ifade u ekildedir: (A>=1 VE A<=10). Bu tr ifadeler yazlrken dikkat edilmelidir rnein (A>=1 VE A<=10) yerine yanllkla (A>=1 VEYA A<=10) yazlmas her zaman doru sonu retecektir. Yada (A=3 VE A=8) gibi bir ifade de asla doru olamayacaktr.
69/17.10.2007 01:51:28 PM
23
Sabit Nedir?
Programn her yerinde ayn deeri ifade eden deerlerdir. Deikenlerde olduu gibi sabitler de tr kavramna sahiptir. Yazl tarzna bakarak sabitin trn anlamak mmkndr.
Dizgi Sabitleri
Trnak ierisinde yazlan her ifade dizgi sabiti olarak alglanr. Programlama dillerinde farkl trnak sembolleri kullanlabilir. ounlukla " sembol tercih edilir. Aritmetik ilemlere giremez. ('Malatya', "Merhaba", "Dnya", "12322" gibi).
Deiken Nedir?
Her seferinde farkl deerler ierebilen yapdr. Programlarda deikenleri kutu olarak sembolize ederek zmlemek mmkndr. Deikenler de sabitlerde olduu gibi trlere sahiptir. Sabitlerdeki trler aynen geerlidir.
Dizi Nedir?
Baz durumlarda kullanm amac ayn olan birden fazla hatta olduka fazla sayda deikene ihtiya bulunur. Bu tip bir durumda bu deikenler tek tek tanmlanmak yerine bir ad altnda indisle tanmlanrlar. bu tanma dizi denir. Baz sorunlarn zm iin bu tanmlar zorunludur. Mesela 1000
69/17.10.2007 01:51:28 PM
24
sayy sralamak iin basit deiken tanmlama ilemi baarsz olacaktr. Veya bir snf listesinin tmn bilgisayarda tutmak isterseniz basit deikenler uygun deildir. ounlukla bu tip bir tanmda dizinin bir ad vardr. Erimek istediiniz dizinin eleman indis deeri ile bu dizi ierisinde istediiniz elemana ulaabilirsiniz. A dizisi A(1) A(2) A(3) A(4) A(5) A(6) A(7) A(8) A(9) A(10)
Bir dizi bu ekilde dnlebilir. Her bir eleman yukardaki gibi isimlendirilir. Bunun bize salayaca avantaj indis deerlerinin deikenlerle ifade edilebilmesinde yatmaktadr. Yani tek bir satr komut ile tm dizi elemanlar mesela ekranda yazdrlabilir.
69/17.10.2007 01:51:28 PM
25
Algoritma altrma
Bazen Bir takm algoritmalarn ne ie yaradn anlamak veya algoritmann doru alp almadn test etmek iin algoritmay altrmak gereklidir. Algoritmay altrmak demek algoritmann admlarn sra ile uygulamak, oluan deiken deerlerini bir tablo zerinde gstermek demektir. 1. BALA 2. A OKU 3. B OKU 4. C OKU 5. TOP=0 6. SAY=A 7. TOP = TOP+SAY 8. SAY=SAY+C 9. EER SAY<=B SE 7. ADIMA GT 10.TOP YAZ 11.SON eklinde verilmi bir algoritmamz olsun. Bu algoritma iin A3, B12 ve C2 deerleri girilince SAY ve TOP deikenlerinde hangi deerlerin oluacan algoritmay admlayarak gsterelim. Deikenlerin Her birinin Deeri Aklama A B C TOP SAY 3 12 2 0 3 6. adma kadar programn ilk altrlnda deikenlerin elde ettii deer 3 5 7. ve 8. admlarn altrlmasndan sonraki deerler 8 7 7. ve 8. deerler tekrar altrlyor 15 9 9<=12 olduu iin 7. ve 8. tekrar altrlyor. 24 11 11<=12 olduu iin 7. ve 8. tekrar altrlyor. 35 13 13<=12 olmad iin algoritma 10. satrdan almaya devam edecektir. Ve 10. satrdaki ifadeden dolay ekrana 35 deeri yazlacaktr.
69/17.10.2007 01:51:28 PM
26
Say Sistemleri
Bir Bilgisayar sisteminde tm bilgi kaytlar ve ilemleri elektriksel devreler zerinden gerekletii iin tek bilinen gerek elektrik akmnn varl veya yokluudur. Bu da matematiksel ve mantksal olarak ikili say sistemine karlk gelir. ounlukla ikili say sistemindeki 0 deeri elektrik olmadn 1 deeri ise bir elektriksel gerilimin olduunu anlatr. Bu iki saysal deer (0 ile 1) ikili say sisteminin rakamlardr. Ve bilgisayarda oluan tm deer ve sonular gerekte bu rakamlar ile anlatlabilirler. Ancak bizim bu saysal deerleri anlamamz zor olduu iin saysal olarak onluk say sistemini kullanrz.
7 1
6 0
5 0
4 1
3 1
2 0
1 1
0 1
=1*20 + 1*21 + 0*22 + 1*23 + 1*24 + 0*25 + 0*26 + 1*27 =1 + 2 + 0+ 8 + 16 + 0 + 0 + 128 =155
69/17.10.2007 01:51:28 PM
27
tablosunda en son kalanlar sondan baa doru yan yana yazlr ve saynn ikilik tabandaki karl bulunmu olur. rnein elimizde 156 gibi saysal bir deer olsun. lem 155 / 2 77 / 2 38 / 2 19 / 2 9/2 4/2 2/2 1/2 Blm 77 38 19 9 4 2 1 0 Kalan 1 1 0 1 1 0 0 1
Sonu Kalan stunundaki deerlerin aadan yukar dizilmesi ile 1 0 0 1 1 0 1 1 olarak elde edilir.
69/17.10.2007 01:51:28 PM
28
Veri leme
Bilgisayarmzda anlatmak, grmek, duymak istediimiz her bilgi veya medya bilgisayar ortamnda saysal olarak saklanr. Bunlarn zerinde yapacanz ilemlerin ou da aslnda matematiksel veya mantksal ilemlerdir. rnein bir izim bilgisayarda nokta nokta saklanr. ki boyutlu bir dzlem zerinde (0,0) koordinatndaki noktann rengi saysal olarak verilir. rnein bu deer 0 ise renk siyah 65555 ise renk beyazdr. Bu saysal deeri deitirerek (0,0) koordinatndaki noktann rengini deitirmi olursunuz. Aynen bu ekilde tm bilgiler bilgisayar ortamnda uygun saysal veriler eklinde tutulur. Yaplacak ilemler bu verilerin zerinde matematiksel ya da mantksal yollarla yaplan ilemlerdir. Bir resmin bytlp kltlmesi resimlerin zerine efekt eklenmesi, seslere efektlerin eklenmesi, video grntlerinde istenilen ekleme ve karmalarn yaplmas, bir nesnenin boyutlu grntsnn elde edilip hareket kazandrlmas gibi onlarca konu veri ileme esaslarna dayanan hesaplamalarla elde edilir. Bu tip kavramlarn her biri iin internetten algoritma vb. aratlp kullanlabilir.
69/17.10.2007 01:51:28 PM
29
6. SON 2. Soru Klavyeden girilecek bir N deerine kadar fibonecci dizisini bulan algoritmay gelitiriniz. Fibonecci dizisi 1 1 deerleri ile balar ve yeni deer kendinden ndeki iki deerin toplam olarak bulunur. (1 1 2 3 5 8 13 21...) zm: Fibonecci dizisi a,b,c eklinde 3 deiken ile hesaplanabilecek bir dizidir. nk srekli a ile b toplanarak c retilir ve sonra bu a, b, c deikenleri kaydrlr. 7. N OKU 8. A=1 9. B=1 10.A,B YAZ 11.C=A+B 12.EER C>N SE 11. GT 13.C YAZ 14.A=B 15.B=C 16.5. ADIMA GT 17.SON 3. Soru Klavyeden girilen bir saynn tm tam blenlerini bulup listeleyen (Ekrana yazan) bir algoritma gelitiriniz.
69/17.10.2007 01:51:28 PM
30
zm: Bu rnei zebilmek iin bleni kalma operatrnn varln kabul edeceiz. Bu amala Cdilinde de kullanlan % operatrn kalan bulma operatr olarak kullanacaz. 18.N OKU 19.X=1 20.EER N%X=0 SE X YAZ 21.X=X+1 22.EER X<=N SE 3. ADIMA GT 23.SON 4. Soru Klavyeden girilen saydan byklk sralamasna gre ortadakini bulup ekrana yazan program iin algoritma yaznz. zm: Bu algoritma saynn klasik yollarla sralanmasn ya da byklk sralamasnn bulunmasnn ne denli zor olduunu anlatmaya alan bir rektir. 24.A, B, C OKU 25.EER A>B VE 26.EER C>B VE 27.EER B>A VE 28.EER C>A VE 29.EER A>C VE 30.EER B>C VE 31.SON 5. Soru Klavyeden girilen A ve B gibi iki saynn blme ilemi kullanmadan sadece toplama ve karma kullanarak kalanl blme yapan algoritmay yaznz. zm: Bu rnek ok eski ilemcilerde arpma ileminin tanml olmad durumlar iin arpma ya da blme yapmak amacyla kullanlan algoritma olarak karmza kmtr. lk okulda da fasulye hesabna dayanarak arpmay rendiimiz yllar hatrlamamz salayabilir. 32.A,B OKU 33.BOLUM=0 34.KALAN=0 35.EER A<B SE KALAN=A, 8. ADIMA GT 36.A=A-B 37.BOLUM=BOLUM+1 38.4. ADIMA GT
SE SE SE SE SE SE
B B A A C C
69/17.10.2007 01:51:28 PM
31
39.BOLUM, KALAN YAZ 6. Soru Klavyeden girilen A ve B gibi iki sayy, arpma ilemi kullanmadan sadece toplama ve karma kullanarak arpp sonucu ekrana yazan algoritmay yaznz. zm: 40.A, B OKU 41.SAY=0 42.TOPLA=0 43.EER SAY>=B SE 8. ADIMA GT 44.TOPLA=TOPLA+A 45.SAY=SAY+1 46.4. ADIMA GT 47.TOPLA YAZ 7. Soru Sfr 0 girilinceye kadar klavyeden okutulan deerlerin ortalamasn hesaplayp ekrana yazan algoritmay gelitiriniz zm: Bu rnekte bir toplam deerini tutabilecek bir de saylar sayabilecek iki deikene ihtiya vardr. Klavyeden girilen her deer sfr ile karlatrlacak deilse ileme devam edilecektir. Sfr ise ortalama hesaplanp ekrana yazlacaktr. 48.T=0 49.SAY=0 50.X OKU 51.EER X=0 SE 8. ADIMA GT 52.T=T+X 53.SAY=SAY+X 54.3. ADIMA GT 55.ORT=T / SAY 56.ORT YAZ 8. Soru Klavyeden girilecek 20 saynn tek olanlarn ayr ift olanlarn ayr toplayp sonular ekrana yazan algoritmay gelitiriniz zm: Bu algoritmada yine % operatrnn kalan bulan operatr olarak kullanlacan varsayyoruz. nk bu algoritmada bir saynn ift mi tek
69/17.10.2007 01:51:28 PM
32
mi olduunu anlamak ancak ve ancak o saynn ikiye blmnden kalann 1 mi 0 m olduuna baldr 57.CIFT=0 58.TEK=0 59.SAY=0 60.X OKU 61.SAY=SAY+1 62.EER X%2=0 SE CIFT=CIFT+X DELSE TEK=TEK+X 63.SAY=SAY+1 64.EER SAY<20 ISE 4. ADIMA GT 65.TEK, CIFT YAZ 9. Soru Bir n deeri iin f(x)=
n
x= 1
ekrana yazan algoritmay gelitiriniz. zm: Bu algoritma olduka basit bir ekle sahip olup benzer ekildeki tm fonksiyonlar kk deiikliklerle rahata hesaplayabilecek bir algoritmadr. Sadece 4. adm deitirerek olduka fazla sayda algoritma veya sorun tretilebilir. 66.N OKU 67.F=0 68.X=1 69.F=F+1/(X*X) 70.X=X+1 71.EER X<=N SE 4. ADIMA GT 72.F YAZ 10. Soru F(x)=
x= 1
kk n deerini bulabilecek bir algoritma gelitiriniz. Kk ve n deerlerinin klavyeden girildiini dnelim zm: 73.KK OKU 74.N OKU 75.F=0 76.X=1
69/17.10.2007 01:51:28 PM
33
77.F=F+1/(X*X) 78.X=X+1 79.EER F<KK SE 5. ADIMA GT 80.F,X YAZ 11. Soru Genel Gsterimi Xn=n2 eklinde olan bir dizinin n. Elemanna kadar tm elemanlarn ekranda yan yana gsterecek programn algoritmasn gelitiriniz. zm: Yan yana veya alt alta bu konuda algoritma dzeyinde yapabilecek bir tanm yok bu ilem daha ok Programlama dili ile hallolabilecek bir ilemdir. Bu nedenle burada o ifade dikkate alnmamtr. 81.N OKU 82.X=1 83.X*X YAZ 84.X=X+1 85.EER X<=N SE 3. ADIMA GT 86.SON 12. Soru Klavyeden 0-Sfr girilinceye kadar girilen bir dizi saynn karelerinin ortalamasn bulacak program iin algoritma gelitiriniz. zm: Bu algoritma 7.sorudaki algoritmaya benzer bir algoritmadr. Ve bu ekilde biri birine ok benzeyen bir sr rnek verilebilir ve soru sorulabilir. 87.SAY=0 88.T=0 89.X OKU 90.EER X=0 SE 8. ADIMA GT 91.T=T+X*X 92.SAY=SAY+1 93.3. ADIMA GT 94.ORT=T/SAY 95.ORT YAZ
69/17.10.2007 01:51:28 PM
34
13. Soru Klavyeden girilecek iki pozitif tam saynn OBEB (Ortak Blenlerin En By)ini bulacak algoritmay gelitiriniz. rnein elimizde 3654 ve 1365 deerleri olsun. Bu deerlerin OBEBi u ekilde bulunmaktadr. 3654 / 1365 Kalan 924 1365 / 924 Kalan 441 924 / 441 Kalan 42 441 / 42 Kalan 21 42 / 21 Kalan 0 Kalan 0-Sfr oluncaya kadar sra ile blme yaplmaktadr. OBEB deeri ise 21 olarak bulunan deerdir. Bu ilem srasnda ve yineleme zelliklerini kullanarak iki saynn OBEBini bulunuz. Kalan bulmak iin % operatrnn tanml olduunu varsayp kullanabilirsiniz. zm: 96.A, B OKU 97.KALAN=A%B 98.EER KALAN=0 SE 7. ADIMA GT 99.A=B 100.B=KALAN 101.2. ADIMA GT 102.B YAZ
fonksiyonu iin X deeri klavyeden girilmektedir. lk 10 terim iin COS fonksiyonunun sonucunu hesaplayp ekrana yazacak algoritmay gelitiriniz. Bu algoritmay gelitirirken standart ilemlerden baka fak(n), s(taban,s) eklinde tanml fonksiyonlarn kullanabilirsiniz. zm: 103.X OKU 104.TERM=1 105.KS=2 106.F=1 107.ARET=-1 108.F=F+ARET*S(X,KS)/FAK(KS)
69/17.10.2007 01:51:28 PM
35
109.ARET=ARET * (-1) 110.TERM=TERM+1 111.KS=KS+2 112.EER TERM<10 SE 6. ADIMA GT 113.F YAZ 15. Soru Klavyeden girilen A ve B gibi iki deerin yerlerini deitirerek ekrana yazan algoritmay gelitiriniz. zm: Burada anlatlmak istenen herhangi bir ift deikenin iindeki deerleri yer deitirmektir. Bir ok programda bu tarz ilemler ihtiya duyulur. rnein birinci deerin ikinci deere gre her zaman byk olmasn salayan bir algoritma sz konusu ise burada aadakne benzer bir yntem kullanlmaldr. 114.A, B OKU 115.TMP=A 116.A=B 117.B=TMP 118.A, B YAZ 16. Soru Klavyeden girilen bir n deerini ikilik say sistemine evirip ekrana yazacak algoritmay gelitiriniz. zm: Bu algoritma bir takm zel deikenler ve yntemler kullanmadan tam olarak doru bir ekilde istenilen grevi yerine getiremeyecektir. Bu amala biz dizi deikenleri kullanabileceimizi dnerek bu algoritmay oluturmaya alacaz. 119.N OKU 120.INDIS=7 121.KALAN=N%2 122.IKILI[INDIS]=KALAN 123.N=N/2 124.INDIS=INDIS-1 125.EER N>1 SE 3. ADIMA GT 126.IKILI[INDIS]=N 127.INDIS=0 128.IKILI[INDIS] YAZ 129.INDIS=INDIS+1 130.EER INDIS<=7 SE 10. ADIMA GT 131.SON
69/17.10.2007 01:51:28 PM
36
17. Soru Klavyeden girilecek bir saynn tek mi ift mi olduunu bulabilecek bir algoritma gelitiriniz. Bu algoritmay gelitirirken bavurduunuz varsaymlar da yaznz. zm: Varsaym u olmaldr: Kalan bulma operatrnn varl bir varsaymdr. nk byle bir operatr her programlama dilinde olmayabilir. 132.SAYI OKU 133.EER SAYI%2=0 SE Tek YAZ DELSE ift YAZ 18. Soru Klavyeden girilen iki say ve bir operatre gre ilem yapp sonucu ekrana yazan algoritmay tasarlaynz. zm: 134.A,B OKU 135.OP OKU 136.EER OP=+ SE C=A+B 137.EER OP=- SE C=A-B 138.EER OP=* SE C=A*B 139.EER OP=/ SE C=A/B 140.C YAZ 19. Soru Klavyeden girilen kesirli bir deeri a/b eklinde rasyonel ifade olarak ekrana yazabilecek algoritmay gelitiriniz. zm: Bu algoritmay yazabilmek iin kk bir varsaymmz olacaktr. Bu varsayma gre programlama dilinde rnein ad TAM olan ve bir saysal deerin tam ksmn bulan bir fonksiyona ihtiya vardr. 141.X OKU 142.PAY=X 143.PAYDA=1 144.PAY=PAY*10 145.PAYDA=PAYDA*10 146.EER PAY<>TAM(PAY) SE 4. ADIMA GT 147.EER PAY%2=0 VE PAYDA%2=0 SE PAY=PAY/2 PAYDA=PAYDA/2 7. ADIMA GT
69/17.10.2007 01:51:28 PM
37
20. Soru Klavyeden girilecek bir harfi byk harfe evirip ekrana yazan algoritmay gelitiriniz. zm: Bu konu ile ilgili algoritma yazabilmek iin ASCII kmesi dediimiz bir kme hakknda bilgi sahibi olmamz gerekiyor. B kme bilgisayarnz tarafndan kullanlan tm karakterlerin sakland bir listedir. Normalde saysal ilemler yapan bilgisayarnzn alfabetik karakterleri ifade edebilmesi iin byle bir lise-kmeye ihtiya duyulur. Bu kmenin elemanlar bir ok kitapta liste olarak verilmitir her bir liste yesinin numaras 0 ile 255 arasndadr. Ve saysal olarak 65 dediimizde A harfini ve mesela 97 dediimizde a harfini anlatm oluruz. Bu kme incelendiinde harfler simetrik olarak belli bir blgede yer alrlar ve bir harfin by ile k arasnda 32 gibi bir saysal fark vardr. Byk harfler 65 ile balar ve daha kk deerlere sahiptir. Kk harfler ise 97 ile balar. 150.HARF OKU 151.EER HARF>=a VE HARF<=z SE HARF=HARF32 152.HARF YAZ. Bu kavramla ilgili olarak onlarca soru zlebilir. Programlama ksmnda bu konuyu temel alan bir ok rnek bulabileceksiniz.
69/17.10.2007 01:51:28 PM
38