Aliexpress Cheap Stephen Curry Sneakers Where to Buy Jordan 3 Stephen Curry Shoes Shoes From Foot Locker Hiroshi Fujiwaras Nike Air Max LD Null H Nike Air Huarache Ultra Damen curry 2 colorways Nike Elastico Pro II Indoor Fußballschuh Herren Nike Air Max Darwin 360 Herren adidas nmd city sock cheap adidas yeezy 350 boost UGG Boots store New Balance 574 site Nike Air Max Janoski Sale new balance 996 women blue gold Nike Air Presto Premium DE Nike Air Max Darwin 360 Herren Nike Air Max 90 Nike Air Presto Weiß Nike Air Jordan 4 for sale nike air max 95 shoes Champs Sports
Karakter Fonksiyonlar
(LEN, VAL, ASC, CHR$, LEFT$, RIGHT$, MID$)

KARAKTER FONKSİYONLAR

LEN(KARAKTER DEĞİŞKEN)

Len fonksiyonunun önüne parantez içerisinde yazılan karakter değişken içerisindeki bilginin karakter olarak uzunluğunu verir.

Örnek:

10 A$="ORHAN"

20 PRINT LEN(A$)

RUN

5

Ok

LEN fonksiyonu karakter değişkenlerdeki bilgilerin kaç karakterden oluştuğunu hesaplar. Sayısal değişkenler üzerinde hata verir.

VAL(KARAKTER DEĞİŞKEN)

Karakter değişkenlerdeki bilgileri sayısal bilgiye çevirir. Eğer değişkendeki bilgiler sayı ve harf karmaşasından oluşuyorsa soldan ilk karaktere bakar, sayı ise ilk gördüğü harf veya simgeye kadar olan kısmı alır, diğer tarafı almaz.

Örnek 1:

10 BAK$="123ORHAN"

20 BK=VAL(BAK$)

30 PRINT BK

RUN

123

Ok

10 No'lu satırda BAK$ değişkenine 123ORHAN değerini atıyoruz. 20 No'lu satırda bu değeri sayısal değişken olan BK değişkenine sayısal olarak atıyoruz. Tabi ki 123 'den sonraki ORHAN kelimesi alınmıyor.

Örnek 2:

10 YAZ$="HARUN67"

20 YAZ=VAL(YAZ$)

30 PRINT YAZ

RUN

0

Ok

Eğer değişkendeki ilk karakter sayı değilse yukarıdaki örnek deki gibi 0 değeri elde edilir.

Örnek 3:

10 TOPLA$="546"

20 TPL=VAL(TOPLA$)

30 PRINT TPL

RUN

546

Ok

ASC("Karakter")

Karakterlerin ASCII kod tablosundaki sıra numarasını verir. Her karakterin ASCII koduna göre bir değeri vardır. Ve bu değeri öğrenmek için ASC komutunu kullanabiliriz.

Ayrıca ASCII değerini bildiğimiz bir karakterin bu sayısal değerini Alt tuşu basılı iken yazdığımızda bu karakter ekrana yazılır. Örneğin A karakterinin ASCII değeri 65 'dir. Bu harfi doğrudan klevyede A tuşuna basmak yerine; Alt tuşunu basılı tutarak sayısal tuşlarla 65 yazıp Alt tuşunu bıraktığımızda ekrana A harfi yazılır. Diyelim ki bir çalışma esnasında klevyenizde bulunan aralık çubuğu bozuldu çalışmıyor. İşte bu durumda geçici çare olarak ALT+32 şeklinde aralık çubuğunun vazifesini Bilgisayarınıza yaptırabilirsiniz. Yani ALT tuşunu basılı tutuyorsunuz ve bu durumda iken aralık çubuğunun ASCII karşılığı olan 32 rakamını kodlamak için önce 3, sonra 2 tuşuna basıp ALT tuşunu bırakıyorsunuz. Bu kural sadece Gwbasic de değil başka programlarda da geçerlidir. Mesela bunu Word de de, Not Defteri'nde de deneyebilirsiniz. Bunun haricinde herhangi bir tuşa başka bir tuşun değerini atamayı da ileride öğreneceğiz. Bu kodları öğrenmek için 128 'den başlayarak 256'ya kadar olanları ALT tuşu ile deneyin. Mesela 185, 187, 188, 200, 202, 203, 204, 205, 206 gibi sayıları ALT tuşu ile birlikte kullandığınızda klevyenizde bulunmayan çizgileri üreterek çerçeveler çizebilirsiniz. Bunları çizerken LOCATE , komutu kullanıp istediğiniz çizginin sayfanın neresine çizileceğini tayin edebilirsiniz.

Yalnız unutmayın ASCII kodların her birisi ayrı programlarda aynı sonuçları vermeyebilir. Bu söylediklerimi GWBASIC dışında uygulamaya kalkarsanız, bazıları hatalı görüntüler verebilir. Benim anlattıklarım BASIC ile ilgili konular olmakla beraber başka programlarda da bazıları uygulanabilir.

Örnek: ASC("A")

Enter'a basıldığında ekranda Büyük harf A'nın karşılığı olan 65 değeri yazılır. Yani demek ki ALT ile beraber 65 yazılırsa Ekranda A harfi yazılırmış.

CHR$(SAYI)

ACS fonksiyonunun tam tersidir. Burada da ASCII değerinin karşılığı olan karakter bulunur.

Örnek 1: PRINT CHR$(65)

Enter'a basıldığında ekrana A karakterini yazar.

Örnek 2: PRINT CHR$(99)

Enter'a basıldığında ekrana c karakterini yazar.

LEFT$(DEĞİŞKEN,SAYI)

Belirtilen değişkenin içinde bulunan bilginin soldan başlayarak belirtilen sayıda karakterini alır. Örneğin A$ değişkenine KARAYOLU diye bir bilgi girelim.

Bu bilginin ilk 4 karakterini almak için bu komutu şöyle kullanıyoruz:

10 A$="KARAYOLU"

20 PRINT LEFT$(A$,4)

RUN

KARA

Ok

Tabi bu bilgiyi ekrana yazdırmak yerine bir başka değişkene de aktarabiliriz. B$=LEFT$(A$,4) gibi. Yani böylece şunu demek isteriz. B$ değişkenine aktar. Neyi? Soldan başlayarak A$ değişkenindeki ilk 4 karakteri. Zaten buradaki LEFT kelimesinin de İngilizce karşılığı Sol anlamında.

RIGHT$(DEĞİŞKEN,SAYI)

Aynı Left$ fonksiyonunda olduğu gibidir. Farkı belirtilen değişkenin belirtilen sayıdaki karakterini soldan değil de sağdan sola doğru almasıdır. Yukarıdaki A değişkenindeki KARAYOLU bilgisinin bu defa sağdan 4 karakterini alalım:

10 A$="KARAYOLU"

20 PRINT RIGHT$(A$,4)

RUN

YOLU

Ok

Buradaki RIGHT kelimesinin anlamı da bilindiği üzere İngilizce de Sağ anlamında.

MID$(DEĞİŞKEN,1.Sayı,2.Sayı)

Bu fonksiyonun kullanılışı da LEFT$ ve RIGHT$ fonksiyonlarına benzer. LEFT$ gibi soldan sağa okur. Farkı alınacak karakter dizisinin nereden başlayıp nerede biteceğini belirleyebilmemiz. Örnek olarak, yukarıdaki örneklerdeki A değişkenindeki KARAYOLU kelimesini ekrana ARAYOL olarak yazdırmak istiyorsak. Bilgisayara şöyle bir komut vermeliyiz; A$ değişkenindeki bilginin 2. karakterinden başla ve 6 karakterini yaz. Bunu da basic diliyle Bilgisayara şöyle anlatırız:

10 A$="KARAYOLU"

20 PRINT MID$(A$,2,6)

RUN

ARAYOL

Ok

Yukarıda belirttiğimiz LEN, LEFT$, RIGHT$ ve MID$ komutları bir programcı için çok önemli komutlardır. Niye diye soracak olursanız. Bunu ilerleyen derslerimizde daha iyi anlayacak olmanıza rağmen küçük bir açıklama yapayım:

Diyelim ki herhangi bir ürün satışı yapan bir firmanın müşteri takibi ile ilgili bir program yaptınız. Bilgisayara bu program vasıtasıyla bütün müşterilerin isim ve soy isimlerini girdiniz. Binlerce isim kayıtlı olduğunu düşünelim. Şimdi de bu bilgiler içinden ismi Ahmet olanları veya Mehmet olanları çağırabilecek bir program yapmayı düşünüyorsunuz. İsim bilgilerini girerken, bilgilerin ara bellekte yerleştiği buffer değişkenlerin uzunluğunu İSİM bilgisi için 15 karakter olarak ayarladığınızı varsayalım. Eğer bu isimleri diske kaydederken LSET komutunu kullanmışsanız, mesela MEHMET ismi diske şu şekilde kaydedilmiş olur;

MEHMET.........

Yani Mehmet kelimesi 6 karakter olduğuna göre Mehmet kelimesinden sonra 9 karakter de boşluk yerleşmiş olacaktır. Böylece siz bilgisayara Mehmet kelimesi arattığınızda Bilgisayar hiçbir zaman için Mehmet kelimesini bulamayacaktır. Çünkü 6 karakterden oluşan MEHMET kelimesi ile sonuna 9 karakter boşluk ilave edilmiş 15 karakterlik MEHMET kelimesini farklı yorumlayacaktır. O halde ne yapmak gerekir. İşte burada aradığımız kelimenin uzunluğunu LEN fonksiyonuyla Bilgisayara hesaplatırız ve 6 rakamını buluruz. Ondan sonra da Bilgisayara arattığımız kelimenin karşılığı olarak değişkenlerdeki bilgilerin ilk 6 karakterine bakacağını belirtiriz. Programlamaya sıfırdan başladığınızı düşünerek; bu anlattıklarım size her ne kadar bu aşamada biraz karışık gelebilirse de sakın ümitsizliğe kapılmayın. Çünkü şu aşamada sizin bu konuyu tam olarak anlamanızı zaten beklemiyorum. Ben sadece bu konuyu belki biraz fikir edinirsiniz diye açıkladım. Ama ilerleyen dersler sonunda bu konuyu tamamen anlayacağınıza inancım tam.

19. Sayfa           21. Sayfa

INDEX