Qbasic Dersleri 2

Bölüm 2: Qbasicde Veri Tipleri

Qbasicde INTEGER, SINGLE, DOUBLE gibi veri tipleri vardır. Veriler belleğe saklanmadan önce bellekte ne kadar yer kaplayacağını belirtmek için kullanılır. Değişkenin içeriği ancak bu şekilde bellekte düzenli bir şekilde yerleşir. Örnek
A% = 126
A değişkenin yanındaki % işareti değişkenin bir INTEGER veri tipine sahip olduğunu gösteriri. Ona aktarılan bilgi bellekte 2 karakterlik yer kaplar.
Değişkenlerin veri tipini tanımlamak şart değildir. O zaman tanımlanmamış değişkenler basic tarafından SINGLE olarak kabul edilir.

 Qbasicde Veri Tipleri

Qbasic diğer dillerdeki gibi tüm veri tiplerini kullanmanıza imkan vermez, fakat genellikle diğerlerine ihtiyaç duymayacaksınız. Qbasic ile kullanabileceğiniz veri tipleri INTEGER, LONG, SINGLE, DOUBLE ve STRING dir. Daha detaylı bilgi almak için menüden HELP/Contents 'i ve çıkan ekranda Data Types i tıklayın.

Veri tipleri nasıl kullanılır?

A% = 253
Y! = 3.141
Z& = 254144
A nın INTEGER olduğunu öğrenmiştik ama Y! ve Z&
! işareti SINGLE verilere sahip değişkenleri tanımlamak için, & işareti LONG verilere sahip değişkenler içindir.
ARAŞTIR: Şimdi siz DOUBLE ve STRING değişkenler için hangi işaretler kullanılması gerektiğini HELP den bulmaya çalışın.

 Data tipi kullanımının bir başka yolu

Değişkenlerin data tiplerini tanımlamak için birkaç alternatif yöntem vardır. Bunlar:
DIM A AS INTEGER
DIM B AS SINGLE
DIM C AS LONG
Bu stil en güzel görüneni ve iyi programcıların kullandığı stildir. Tanımları düzgün yaptıktan sonra programın ileriki aşamalarında yalnızca değişken adını kullanmanız yeterlidir.
DEFINT A
DEFSNG B,K,N
DEFLNG C-D
Bu da başka bir stil Değişkenin baş harfine göre tanımlanmamış olan tüm değişkenler DEF in yanındaki değişken türünde olur. İyi bir stil sayılmaz.
A% = 253
Y! = 3.141
Z& = 254144
Bu şekilde tanımlama yaptığınızda aynı değişkeni hep aynı şekilde yazmak zorundasınız. Yani A% nin değerini değiştirmek için A = 100 kullanmak sakıncalıdır.
DİKKAT:
A! = 22.125
A& = 46500
A% = 255
PRINT A!, A&, A%
PRINT A

 Kullanıcı tanımlı Veri Tipleri

Kendi veri tipinizi belirleyebilirsiniz Bu size bellekte kaplayacak olan verilerinizi kullanmanızı kolaylaştıracaktır. Örneğin kişilerin adres bilgileri üzerinde işlem yapmak istiyorsanız, kişi için kendinizin belirlediği bir veri yapısı oluşturabilirsiniz.
TYPE Adrestipi
  Adresi AS STRING * 50
  PostaKodu AS STRING * 7
  Adi AS STRING * 30
  Telefonu AS STRING * 18
 END TYPE
Bu açıklamalar sanırım yetersiz olacaktır başlangıç için. Daha detaylı bilgi almak için TYPE yazısı üzerinde iken F1 e basarak yardım alabilirsiniz.
Tanımlamış olduğumuz ADRESTIPI veri tipini kullanmak için bellekte yer açmalıyız. Bunun için
DIM Personel AS Addrestipi
komutunu kullanırız. Şimdi bu değişkenin(PERSONEL) elemanlarına değer aktaralım
Personel.Adresi = "Ankara Caddesi" 
Personel.PostaKodu = "33522" 
Personel.Adi = "Murat Velioğlu" 
Personel.Telefonu = "0866-945 44 21"
Bu tip değişken kullanımı QBasic de yeni iseniz ve ya diğer BASIC dillere alışkanlığınız varsa garip gelecektir. Ama bu tip değişkenler diğer dillerde de kullanılmaktadır. Şu an için telaşlanmanıza gerek yoktur. Zamanla bu yapıya alışıp gerekli yerlerde rahatlıkla kullanacaksınız.
Veri Tipleri Özet Tablosu
VERİ TİPİTANIMLAMA
ŞEKİLLERİ
BELLEKTE KAPLADIĞI ALAN
(Byte)
AÇIKLAMA
INTEGERDIM A AS INTEGER
DIM A%
DEFINT A
2 (16 bit)
-32768 ile 32767 sayıları arasındaki TAM sayıları tutabilir(2^15). Daha büyük sayılar yazmaya çalıştığınızda Owerflow(Taşma) hatası verir. Küsurlu rakamlar vermeye çalıştığınızda yakın olan sayıya tamamlar.
A% = 45.12 '--> 45
A% = 51.72 '--> 52
LONGDIM A AS LONG
DIM A&
DEFLNG A
4 (32 bit)
-2147483648 ile 2147483647 sayıları arasındaki TAM sayıları tutabilir(2^31). Küsurlar INTEGERdeki gibidir.
SINGLEDIM A AS SINGLE
DIM A!
DEFSNG A
4 (32 bit)
7 rakamdan oluşan küsurlu veya tam rakamları tutar.
A! = 3.141145
Daha fazla rakam girildiğinde bilimsel kullanım şekline dönüştürür.
A! = 12345678 ' -> 1.234568E+07
E+07 demek .(nokta) yı 7 rakam sağa kaydırılacak demektir
E-07 olsaydı sola kaydırma olacaktı.
A! = 50000000000 ' -> 5E+10
A! = 1 / 25000000 ' -> 4E-08
DOUBLEDIM A AS DOUBLE
DIM A#
DEFDBL A
8 (64 bit)
15 rakamdan oluşan küsurlu veya tam rakamları tutar. Diğer özellikler SINGLEdaki gibidir.
STRINGDIM A AS STRING
DIM A$
DEFSTR A
Her bir karakter için 1 byte
Kullanıcı
Tanımlı
 Tanımlanan genişliğe göre değişir
PÜF NOKTASI:
DIM BORCU AS LONG
şeklinde değişken tanımlandıktan sonra programın ilerleyen satırlarında
BORCU = 1250000
şeklinde kullanabiliriz. Ama karmaşık programlar yazdığınızda bu kullanım hangi değişkenin hangi veri tipinde olduğunu anlamanızda zorluk çıkarır. Kolayı: İmleç değişken üzerinde iken F1 tuşuna basarak değişkenin hangi modülde hangi veri tipinde kullanıldığını gösteren ekranı görebilirsiniz.

0 yorum:

Related Posts Plugin for WordPress, Blogger...