Değişken olarak harf yada kelime kullanımı?

Başlatan . Kağan, 05 Kasım 2021, 16:39:56

. Kağan

Kodun başında bir harf gurubunu değişken olarak kullanıp, programdaki ekranlarda(LCDOut ile) yada baskıda (HSEROUT ile) göstermek mümkünmü dür?

Anlatabilmek için aşağıdaki gibi bir şeyler yazdım ama aşağıdaki gibi çalışmadığını biliyorum.  :)

FirmaAdi var word
FirmaAdi = "kagan"

Basla:
LCDOut $FE,1
LCDOUT $FE,$80,FirmaAdi
pause 1000
goto Basla

aRci

Herhalde en kolay bu şekilde olabilir.

FirmaAdi var byte [30]  '30 adetli dizi oluşturuldu.

FirmaAdi[0] = "k"
FirmaAdi[1] = "a"
FirmaAdi[2] = "g"
FirmaAdi[3] = "a"
FirmaAdi[4] = "n"
Basla:
Lcdout $fe,1
Lcdout $fe,$80,FirmaAdi[0]
Lcdout FirmaAdi[1]
Lcdout FirmaAdi[2]
Lcdout FirmaAdi[3]
Lcdout FirmaAdi[4]
pause 1000
goto Basla


ete

#2
"Kagan" bir string yani harf dizisidir. Dizideki her bir harfin bir ASCII kodu vardır. A harfi 65 ve sonrası alfabetik sıraya göre 66-67 -68 diye devam eder.
Bu durumda birden fazla rakama sahip bir harf dizisini tek bir değişkene atayamazsınız mantıksız olur.
aRci bir yol göstermiş yanlış değil ama o şekilde kullanmak da çok üniversal olmuyor.
Onun yerine lookup tablosu kullanmak daha doğru olur.

 LCDOUT $FE,$80
 FOR Alan = 0 TO 4 
  LOOKUP Alan,["Kagan"],Veren
  Lcdout Veren
  next
Burada dikkat edilecek hususlar şunlar.
- Döngü karekter adedi kadar kurulacak. Örnekte 0-4 aralığında 5 karekter ediyor.
- Ekranın neresine yazdırılacak ise döngüden önceki LCDOUT komutu yazdırlacak yerin birinci karekterinin yerini göstermeli. Örnekte ilk satır ilk karekter olarak seçildi.
Bu sistemi alt programlaarda uygulamak mümkün. Her yazdırılacak karekter dizisi için ayrı bir alt program kullanılabilir. Sonrasında GOSUB KAGAN_YAZ  GOSUB ETE_YAZ şeklinde seçilerek oralara yönledirip istenilenler ekrana yazdırılabilir. Hatta LCDOUT komutundaki yer bir değişkene verilerek alt programa yollanırken onada bir değer verilerek istenilen yere yazdırma yapılabilir.

Ete

Hattuşa

#3
arkadaşlar PBP da string,byteArray tanımlanan bir değer nasıl print edilir bilmem ama ben protonda şu şekilde kullanıyorum,hiç sıkıntı çıkarmıyor


dim yazi[5] as byte
yazi ="Kagan"


print at 1,1,Str yazi\5


Powered by EzPortal