Amiga Dünyası sayı 17, sayfa 44

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 44

yorsanız, programı her çalıştırışınızda aynı değerleri elde edersiniz. RANDOMIZE komutu, rasgele sayı üretecini başlangıçtaki durumuna döndürerek yeni bir seri rasgele sayı üretilmesini sağlar. x argümanı, -32768 ile 32767 arasında bir sayı olarak verilir ve bu sayı rasgele sayı hesaplamalarında kullanılır. Aynı sayı iki kez üst üste girilirse, aynı sayı dizisi elde edilir. Herhangi bir değer vermezseniz, AmigaBasic bu değeri girmenizi ister: Random Number Seed (-32768 to 32767) ?

Bu değeri elle girmek istemezseniz, komutun ikinci şeklini kullanmalısınız. Bu durumda, AmigaBasic hesaplamalarda o anki zamanı kullanır. Bu şekilde gerçek rasgele sayılar üretilebilir ve programınız her çalıştırılışında farklı bir rasgele sayı dizisi oluşur.

READ KOMUTU: Kullanım Şekli: READ değişken-listesi Bir DATA satırından bir değer okuyarak takip eden değişken içine yerleştirir. Değişken, okunan değerle aynı tip olmalıdır; yani bir sayı değişkenine yazısal değer, yazısal dizi değişkenine de sayısal bir değer okunamaz, aksi takdirde bir "Syntax error" mesajı oluşur.

Tek bir READ komutu, bir ya da daha fazla DATA yönergesine erişebilir; ya da birçok READ komutu aynı DATA satırını kullanabilir, değişken listesindeki değişken sayısı, DATA satırındaki değerlerden fazlaysa, "Out of data" hatası ortaya çıkar.

READ komutu, dataları okurken bir DATA İŞARETÇİSİ kullanır. Bu işaretçi, son okunan datayı gösterir ve RESTORE ile başa alınmadıkça, okuma işlemi bu işaretçiden itibaren yapılır. Bir örnekle bu komutu da tamamlayalım:

READ A$,B$ PRINT AŞ;B$ DATA "HERKESE "/'MERHABA!"

REM KOMUTU: Kullanım Şekli: REM [mesaj] Programın rahat incelenebilmesi için satırlar arasına açıklama koymak için kullanılır. İşlevsel açıdan hiçbir fonksiyonu yoktur, komuttan sonra yazılanlar umursanmaz. Bir program satırının son komutu olabileceği gibi, bir satırda tek başına da bulunabilir, mesaj, gereken açıklamaların yapıldığı yerdir. REM komutu yerine tek tırnak işareti (') de kullanılabilir.

RESTORE KOMUTU: Kullanım Şekli: RESTORE [satır] READ komutunu açıklarken de bahsettiğimiz RESTORE komutu, data işaretçisinin data satırının başına gelmesini sağlayarak yeniden okunmasını sağlar, satır argümanı kullanılırsa, oradan sonraki ilk data satırının başına gelen data işaretçisi; satır numarası verilmediğinde, programın ilk data satırına geri döner.

RESUME KOMUTU: Kullanım Şekli: RESUME [0] RESUME NEXT RESUME satır RESUME komutu, bir hata nedeniyle programın kesilen çalışmasını devam ettirir. RESUME ya da RESUME[0], programın çalışmasını hataya sebep olan yönergeden; RESUME NEXT, hatanın oluştuğu satırın bir sonrasından ve RESUME satır, belirtilen satırdan itibaren başlatır.

RESUME yönergesi, bir error-handling rutini (hatırladınız mı?) içerisinde değilse, "RESUME without error" hata mesajı verir.

İşte komutun kullanımına güzel bir altrutin örneği:

ErrorYakala: BEEP IF ERR=53 THEN

uyar$="DOSYA BULUNAMADI" GOTO ErrorCik ENDIF IFERR=61THEN

uyar$="DISK DOLU" GOTO ErrorCik EndlF uyar$="HATANUMARASI"+STR$(ERR) ErrorCik: scrid=-1 CALL Requester (uyar$,"","Retry","CANCEL", 2,cevap%) IF cevap%=0 THEN

CLOSE l RESUME Anamenu ELSE

CLOSE 1 ON ERROR GOTO ErrorYakala RESUME ENDIF

RETURN KOMUTU: Kullanım Şekli: RETURN satır Program kontrolü bir altrutinden geri döner. GOTO ya da GOSUB gibi yönergelerle bir altrutine atlayan program, RETURN komutu ile satır argümanı verilmemişse dallanma komutunun bir alt satırına geri döner ve oradan çalışmasına devam eder. satır belirtilirse, o satıra geri döner.

Şimdi sonsuz döngüde kalıp sol mouse tuşuna basıldığını haber veren bir program örneği verelim:

a=-l ON MOUSE GOSUB MouseKlik MOUSE ON

PRINT "Sol mouse tuşuna basin" WHILE a:WEND MouseKlik: PRINT "Buton kliklendi" RETURN

Program, mouse tuşuna basılana kadar sonsuz bir döngüde bekliyor; mouse kliklendiğinde MouseKlik altrutinine dallanıyor ve RETURN komutuyla döngüye geri dönüyor.

Bu aylık da bu kadar. Gelecek ay yine birlikte olalım. Hoşça kalın....

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