MegAmiga sayı 5, sayfa 13

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 13

Read, Data

ve Restore komutları yetişiyor. Komutların Türkçe. karşılıklarını verince daha iyi anlayacaksınız. Sırayla okuma, bilgi ve yenileme. Yaptıkları işte aynı isimleri gibi. Bilgiyi okuma ile okuyor ve sırası gelince — yeniliyorsunuz.Gelin — Az5 ifadesini Read, Data ile yazalım: Read A Data 5 Şimdi diyeceksinizki A—5 ile yazacağım şeyi niye iki satıra uzatayım ama bekleyin. Şimdi iki program veriyorum arka arkaya ikiside aynı işi yapıyor. AzI : Bz5 : C$z"AMOS" : D#-1.23 :OMAY$z"Bunak" Şimdide ikinci program: Read A,B,C$,D#,OMAY$ Data 1,5,"AMOS",1.23,"Bunak" Gördüğünüz gibi değişken sayınız artınca Read-Data kullanmak daha pratik bir hal almaya başlıyor. Evet gelelim Read-Data komutlarının diğer özelliklerine. Şimdi ilk olarak Read komutu Data'dan önce gelmelidir. İkincisi Read'de verdiğiniz değişken tipiyle Data'da okuduğunuz değişken tipi aynı olmalıdır. Üçüncü olarak Data satırı Read'den hemen sonra gelmek zorunda değildir. Read'den daha aşağıda olmak üzere programın herhangibir yerinde olabilir.Son olarakta Read satırında Data satırında olan sayıdan daha fazla değişken okutursanız Out of Data hatası alırsınız. Yani bilgisayar sizi kibarca daha fazla bilginizin olmadığını ama sizin -ısrarla ona oku emri verdiğinizi belirtir. Şu programı bir yazın: For K-zI To 4 Read A$ : Print A$; : Wait 50 Next Data "A","M","O" Data "S" Şimdi bu program üzerinde konuşalım. Şimdi For-Next döngülerini ileride anlatacağım için şimdilik sadece burada kullanılanın For ile Next arasındaki satırı dört kere tekrarlattığını bilin yeter. Evet progamı sırayla inceleyelim. Program başladığında For komutu sayesinde içerdeki satır bir döngüye giriyor. Bundan sonra program Read A$ komutuyla — bilgisayardan AŞ adlı değişken için bir bilgi istiyor ve ilerdeki Data satırına bakıp "Â" adlı bilgiyi alıp A$ değişkeninin içine kaydediyor. Yani komutunun görevini yapıyor.Sonra Print A$, sayesinde ekrana A$'ın içeriği olan "A" harfi basılıyor(sondaki noktalı virgül bilgisayara alt satıra geçme, ben bu satıra devam edeceğim demek) ve Wait komutu sayesinde bir saniye bekliyor, Next komutunu gören program tekrar

Read A$'a geri dönüyor ve biz bu satır sayesinde bilgisayardan bir bilgi daha istiyoruz. O zaman bilgisayar yine Data'ya gidip kaldığı yerden devam ediyor (unutmayın bilgisayar kaldığı yeri tutuyor, zaten öyle de yapması lazım yoksa bize sonsuza kadar "A" değerini verirdi) ve bize "M" değerini veriyor, Demin "A" değerini alan A$ değişkeni bu sefer "M" değerini alıyor ve ekrana "M" de yazılıyor. Bu böyle 4 kere sürdüğünde de ekrana AMOS yazılıyor. Peki size bir soru. Eğer döngüyü bir kere daha yapsaydık ne olurdu bakalım? Aferin bildiniz, bilgisayar daha fazla okuyacağım bilgi yok deyip isyan ederdi. Efendim ne dedin, ha bir arkadaşınız niye "S" harfi aşağıya yazıldı diyor. Sevgili arkadaşım bunun özel bir anlamı yok, isterseniz onu "O"'nun yanına da yazabilirdiniz, ben sadece böyle de yazılabileceğini göstermek için öyle yaptım. Şimdi bir program daha yapıp bunu konuşalım: Read A,B$,C#,D Evet bu programla Data satırlarında işlem de yapabildiğinizi öğrenmiş oluyorsunuz. Sonuç olarak program A değişkeni 16, B$ değişkeni "OMAY'la AMOS", C# değişkeni 5.5, D değişkeni ise 0 ile 20 arasında bir değer alıyor. Evet yazının sonuna yaklaşırken son olarak size Restore komutunu anlatmak istiyorum. Bu yaptığı iş aslında çok basit.

Bir sonraki Read komutunun nerden bilgi okumaya başlayacağını belirtiyor. Şuf program üzerinde tartışalım. Restore UC : Read A$ Restore BIR : Read B$ Restore IKI : Read C$ Print A$4"

BIR: Data "AMOS" IKI: Data "sevenler." UC; Data "Merhaba" Evet program başlayınca Restore

komutu bilgisayara diyor ki sen bundan sonraki okuma işini ÜÇ isimli satırdan yap. Sonra A$ değişkeni "Merhaba" değerini alıyor bundan sonra da sırayla okuma işlemleri Restore komutu ile BİR ve İKİ isimli satırlardan devam ediyor ve en sonunda A$, B$ ve C$ değişkenleri aralarında bir boşluk bulunacak şekilde ekrana yazılıyorlar. Evet bu aylık da bu kadar sevgili arkadaşlar. Bu ay örnek program yok çünkü hem mektuplar var hem de ben biraz lafı fazla uzattım, artık kısmetse gelecek aya. Bu aylık da bu kadar. Bu arada artık yazılarımı kafiyeli bitirmeyeceğim söz. Buyrun size bir şiir.

“Garibim Omay hep meraktır. Kendine ettiği helaktır. Her ay bekler mektup diye, Belkim biraz salaktır.”

Bu ay iki tane mektubumuz var. İlki Şişli'den İlker adlı bir arkadaşımızdan. İlker, Sprite'lar ve Matematik fonksiyonlarının AMOS'ta kullanımları ile ilgili yardım ve AMOS için çıkarılan Craft ek komut disketlerinin nasıl kullanılacağı hakkında benden bilgi istemiş. Şimdi sevgili İlker, senin de söylediğin gibi Sprite konusuna sonradan değineceğiz. Sin, Cos gibi matematik fonksiyonlarıyla yapmak istediğin eğrisel hareketlerle ilgili bir programı da ileriki bir sayıda vermeye çalışacağım, biliyorsun şu anda bayağı sıkışık durumdayım. Eğer ileride bu programı sen bir ara hatırlatırsın. Craft konusuna gelince, yabancı dergilerde bu programı ben de gördüm fakat almak için hiç vakit olmadı. Onun için senin bu sorununa üzülerek çözüm bulamayacağım ama eğer sorun çıkaran disketleri bana güvenli bir şekilde gönderirsen hem bunlarla ilgili bilgiyi bu sayfalardan verebilirim, hem de sorununu çözmeye çalışırım. Disketlerini de işim bitince geri yollarım. Bu arada bunlarla 3D objeler yapılıp kullanılabildiğini yazmışsın. Benim bildiğim 3D obje yapmak için Object Moduler, kullanım için de AMOS'un içinde 3D objeleri kullanmasını sağlayan library'leri olan hali piyasada bulunuyor. Bunları alarak rahatça 3D cisimler yapıp hareket ettirebilirsin. Gelelim ikinci mektubumuza Üsküdar'dan Endoplazmik Retikulum'dan geliyor. Sevgili Endoplazmik Retikulum sana kısaca E.R. diyebilir miyim? Tamam o zaman anlaştık. Sevgili E.R.'nin aslında bir sorusu yok, dertleşmek için yazmış. Her zaman söylüyorum bana mektup yazmanız için bir sorununuzun olması şart değil, canınız sıkılıyorsa üşenmeyin herkesin yaptığı şu işi yapıp mektup yazın. Neyse biz konumuza dönelim. Sevgili E.R., mektubun beni çok duygulandırdı. Mektubunu sevgili arkadaşım Levent (bu benim canım kadar arkadaşım olup dergide Raven, Kara Ejder, Kara Ejderha veya Levent gibi isimlerde bulunur. Maddenin dört hali olmasına karşın Levent'in kaç hali olduğu belli değildir) okurken birden o eski günlere döndük, aklımıza 64 oyunları geldi, birçok mutlu anı geldi, uzun süre daldık gittik. Assembler programcısı olduğunu yazmışsın ve destek göremediğinden yakınmışsın. Yani destek konusunda haklısındır ama ben senin yerinde olsam ne yapardım biliyor musun? Hazır Assembler biliyorsun, kardeşin grafik çiziyor, Basic'i herhalde biliyorsundur, bu durumda yapacağın tek şey AMOS öğrenmek. Nasılsa Basic bildiğinden bu çok zor olmaz, ayrıca programında hız gerektiren yerleri de AMOS'un içinden Assembler kullanarak yaparsın. Ben senin yerinde olsam hiç durmam iyice tasarladıktan sonra bir oyun yapmaya başlardım. Neyse bu aylık mektuplarda bu kadar, gelecek ay sizden daha fazlasını bekliyorum. Üşenmeyin işte, alın elinize bir kağıt kalem de yazın, Bakın ben okumaya ve cevaplamaya üşeniyor muyum?

Omay oğlum bak yine şişmanlıyorsun. Ayıp ya

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