Amiga Dünyası sayı 14, sayfa 15

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 15

Merhaba arkadaşlar. Bu ayki yazımızda grafik komutlarına biraz ara verip; AMOS'un 'string' fonksiyonlarını anlatacağım. (Bu bölümden itibaren karakter değişkenlerinden kısaca string diye söz edeceğim.) Bu fonksiyonlar sayesinde, AMOS sadece üstün grafik özelliklerine sahip bir demo programı olmaktan çıkıp, adventure oyunları yazabileceğiniz ve kelimeler üzerinde istediğiniz gibi oynayabileceğiniz bir program haline gelmekte.

Bu sayımızda AMOS yazımıza bir de yenilik ekledik. Siz değerli okuyucularımızdan AMOS'la ilgili öyle çok soru alıyoruz ki bunları okuyucu mektupları köşemize sığdıramıyoruz. Bunun üzerine bu sayımızdan itibaren, bu bölümün sonuna yeni bir okuyucu mektupları bölümü eklemeye karar verdik. Bu bölümde AMOS ile ilgili merak ettiğiniz, öğrenmek isteyip de sormaya çekindiğiniz konuları açıklayacağım.

Şimdi gelelim bu ayki komutlarımıza: KOMUT: Left$ KULLANILIŞI:

a$=left$(b$,n) left$(b$,n)=a$

Bu komut bir string'in soldan başlamak üzere 'n' kadar karakterini etkiler. Birinci kullanılış biçiminde b$ değişkeninin solundaki ilk 'n' harf a$ değişkenine atanır. Bu durumun tersi ikinci kullanılış biçiminde geçerli olur. Bu sefer b$ değişkeninin ilk 'n' harfi a$ değişkeninden alınır.

Örneğin; Print left$("AMIGA DÜNYASI",5) komutu ekrana AMIGA yazar.

KOMUT: Right$ KULLANILIŞI:

a$=right$(b$,n) right$(b$,n)=a$

Bu komut aynı LEFT$ gibi çalışır. Aralarındaki tek fark bu sefer karakterleri soldan değil de sağdan itibaren kopyalamasıdır.

Örneğin; PRINT RIGHT$("AMIGA DÜNYASI",7) komutu ekrana sadece DÜNYASI yazacaktır.

KOMUT: MID$ KULLANILIŞI: a$=MID$(b$,s,l) MID$(b$,s,l)=a$

Bu komut diğer iki komuttan daha güçlüdür. String'in istediğiniz her yerine ulaşabilmenizi sağlar. Komut b$ değişkeninin 's' numaralı karakterinden başlamak üzere l tane karakterini etkiler.

Örneğin; PRINT MID$("AMIGADUNYASI",7,5) komutu ekrana DÜNYA yazar.

KOMUT: INSTR KULLANILIŞI:

f=instr(a$,b$[,n])

INSTR komutu a$ değişkeninin içinde b$'ı arar. Eğer bulursa f değişkenine b$'ın a$'ın hangi karakterinden başladığını atar. Bulamazsa f=0 olur. Eğer aramaya a$'ın en başından değil de başka bir yerinden başlamak istiyorsanız, bunu 'n' değişkeni ile belirtebilirsiniz. Bu sefer komut aramaya a$'ın 'n'. karakterinden başlar. Örneğin; PRINT INSTR("AMIGA DÜNYASI","DÜN") PRINT INSTR("AMIGA DÜNYASI","a") PRINT INSTR("AMIGA DÜNYASI","a",2) PRINT INSTR("AMIGA DÜNYASI","a",6) komutları ekrana sırasıyla 7, 1, 5 ve 11 yazacaktır. Aşağıdaki programda bu komutu kullanarak yazılmış ve bir string'deki kelimeleri sayan bir prosedür yazdım.

Rem** ** Rem** AMIGA DÜNYASI ** Rem** written by Burak Ozdemir ** Rem** AMOS copyright 1990 ** Rem** Mandarin/Jawx ** Rem** **

Do Input A$ A$=A$+"" WORDCOUNT[A$] Print Param Loop Procedure WORDCOUNT[W$J N=0 I=-l Do F=Instr(W$,"",I+l) If F=0 Then Exit Inc N I=F Loop End Proc[N]

KOMUT: Upper$ KULLANILIŞI: a$=upper$(b$)

Bu komut bir string'deki küçük harfleri büyük harflere çevirir.

KOMUT: Lower$ KULLANILIŞI: a$=lower$(b$)

Bu komut deminkinin tam tersidir. Bir string'deki büyük harfleri küçük harflere çevirir.

Klavyeyle gezinmek için ← ve → tuşları.