Değişkenlerin Kullanımı

LibreOffice Basic'de değişkenlerin temel kullanımı açıklanmaktadır.

Değişken Tanımlayıcıları için Adlandırma Kuralları

Bir değişken ismi en fazla 255 karakter içerebilir. Değiken isminin ilk karakteri bir A-Z ya da a-z harfi olmalıdır. Sayılar da değişken ismine dahil edilebilir. Alt çizgi ("_") dışında noktalama işaretlerine ve özel karakterlere izin verilmez. LibreOffice Basic'te değişken tanımlayıcılar büyük-küçük harf duyarlı değildir. Değişken isimleri boşluk içerebilir ancak bu durumda köşeli parantezlerle kapatılmalıdır.

Değişken kimlikleri için örnekler:


    MyNumber=5      'Correct'
    MyNumber5=15    'Correct'
    MyNumber_5=20   'Correct'
    My Number=20    'Not valid, variable with space must be enclosed in square brackets'
    [My Number]=12  'Correct'
    DéjàVu=25       'Not valid, special characters are not allowed'
    5MyNumber=12    'Not valid, variable may not begin with a number'
    Number,Mine=12  'Not valid, punctuation marks are not allowed'

Değişken Bildirimleri

LibreOffice Basic'te bir değişkeni açıkça belirtmek zorunda değilsiniz. Bir değişken bildirimi Dim ifadesi ile yapılabilir. İsimleri virgülle yırarak bir seferde birden fazla değişken bildirebilirsiniz. Değişken tipi tanımlamak için, ya isimden sonra tip-bildirim işareti ya da uygun anahtar kelimeyi kullanın.

Değişken tanımlamaları için örnekler:


    Dim a$               'Declares the variable "a" as a String'
    Dim a As String      'Declares the variable "a" as a String'
    Dim a$, b As Integer 'Declares one variable as a String and one as an Integer'
    Dim c As Boolean     'Declares c as a Boolean variable that can be TRUE or FALSE'
Uyarı Simgesi

Bir değişkeni belli bir tipte bildiğiniz zaman aynı isimle başka bir tipte bir değişken bildiremesiniz!


Değişken Tanımlarının Zorunlu Kılınması

Değişkenlerin tanımlanmasını zorunlu kılmak için, aşağıdaki komutu kullanın:


Option Explicit

Option Explicit ifadesi ilk SUB ' dan önce modül içindeki ilk satır olmak zorundadır. Genellikle, sadece dizilerin açıkça tanımlanması gerekmektedir. Diğer tüm değişkenler tip-tanımlama karakterine göre tanımlanır, veya - eğer belirtilmediyse - Single varsayılan tipinde olduğu gibi.

Değişken Tipleri

LibreOffice Basic dört değişken sınıfını destekler:

Tam Sayı Değişkenleri

Tam sayı değişkenler -32768 ile 32767 arasındadır. Eğer bir kayan-noktalı değeri tamsayı değişkene atarsanız, ondalık kısım bir sonraki tam sayıya yuvarlanır. Tam sayı değişkenler yordamlarda hızlıca hesaplanır ve döngülerde sayaç değişkeni olarak uygundur. Bir tam sayı değişkeni sadece iki byte belleğe ihtiyaç duyar. "%" tip-bildirim karakteridir.


Dim Variable%
Dim Variable As Integer

Uzun Tam Sayı Değişkenleri

Uzun tamsayı değişkenler -2147483648 ile 2147483647 aralığındadır. Eğer kayan-noktalı bir değeri uzun tam sayı değişkene atarsanız, ondalık kısım bir sonraki tam sayı değere yuvarlanır. Uzun tamsayı değişkenleri yordamlarda hızlıca hesaplanır ve büyük değerler için döngülerde sayaç değişkeni olarak kullanılmaya uygundur. Bir uzun tam sayı değişkeni dört byte belleğe ihtiyaç duyar. "&" tip-bildirim karakteridir.


Dim Variable&
Dim Variable As Long

Ondalıklı Değişkenler

Ondalık değişkenler pozitif, negatif sayılar veya sıfır değeri alabilir. Duyarlılık 29. basamağa kadardır.

Ondalık sayılar için önek olarak artı (+) veya eksi (-) işaretleri kullanılabilir. ( boşluklu ya da boşluksuz ).

Bir ondalık sayı bir tamsayı değişkenine atanmışsa, LibreOffice Basic ondalıklı sayıyı aşağı veya yukarıdaki bir değere yuvarlar.

Tekil Değişkenler

Single variables can take positive or negative values ranging from 3.402823 x 10E38 to 1.401298 x 10E-45. Single variables are floating-point variables, in which the decimal precision decreases as the non-decimal part of the number increases. Single variables are suitable for mathematical calculations of average precision. Calculations require more time than for Integer variables, but are faster than calculations with Double variables. A Single variable requires 4 bytes of memory. The type-declaration character is "!".


Dim Variable!
Dim Variable As Single

Çift Değişkenler

Double variables can take positive or negative values ranging from 1.79769313486232 x 10E308 to 4.94065645841247 x 10E-324. Double variables are floating-point variables, in which the decimal precision decreases as the non-decimal part of the number increases. Double variables are suitable for precise calculations. Calculations require more time than for Single variables. A Double variable requires 8 bytes of memory. The type-declaration character is "#".


Dim Variable#
Dim Variable As Double

Para Birimi Değişkenleri

Para Birimi değişkenleri 64-bit sayılar şeklinde (8 bayt) dahili olarak depolanır ve 4 ondalık kısım ile 15 ondalık olmayan kısımdan oluşan sabit ondalıklı sayılar şeklinde gösterilir. Değer aralığı -922337203685477,5808'den +922337203685477,5807'ye kadardır. Para birimi değerlerinin yüksek hassasiyetle hesaplanması için kullanılırlar. Tip bildirim karakteri "@" işaretidir.


Dim Variable@
Dim Variable As Currency

Literals for integers

Numbers can be encoded using octal and hexadecimal forms.


  xi = &o13 '    8 + 3
  ci = &h65 ' 6*16 + 5
  MAX_Integer =  &o77777 '  32767 = &h7FFF
  MIN_Integer = &o100000 ' -32768 = &h8000
  MAX_Long = &h7fffffff '  2147483647 = &o17777777777
  MIN_Long = &h80000000 ' -2147483648 = &o20000000000

Dizi Değişkenleri

Dizi değişkenleri 65,535 karaktere kadarlık karakter dizilerini barındırır. Her karakter kendine karşılık gelen Unicode değeri olarak depolanır. Dizi değişkenleri programlardaki kelime işlemleri için veya 64 Kilobayt uzunluğa kadar, basılamaz karakterlerin geçici olarak depolanması için uygundur. Dizi değişkenlerini saklamak için gerekli hafıza değişkendeki karakter sayısına bağlıdır. Tür bildirim karakteri "$" işaretidir.


Dim Variable$
Dim Variable As String

Mantıksal Değişkenler

Boolean değişkenleri iki değerden sadece birini depolar: DOĞRU ya da YANLIŞ. Sadece 0 YANLIŞ, diğer tüm değerler DOĞRU kabul edilir.


Dim Variable As Boolean

Tarih Değişkenleri

Tarih değişkenleri sadece dahili biçimde depolanan tarih ve zaman değerlerini içerir. Değişkenler Tarih değişkenine Dateserial, Datevalue, Timeserial ya da Timevalue ile atanırlarve otomatik olarak dahili formata dönüştürülürler. Tarih değişkenleri Day, Month, Year or the Hour, Minute, Second fonksiyonları kullanılarak normal sayılara dönüştürülürler. Dahili biçim iki sayı arasındaki farkı hesaplayarak tarih/zaman karşılaştırması yapabilir. Bu değişkenler sadece Date anahtar kelimesiyle tanımlanabilir.


Dim Variable As Date

Değişkenlerin Başlangıç Değerleri

Değişkenler tanımlandıklarında otomatik olarak "Null" değerini alırlar. Aşağıdaki kurallara dikkat edin:

Sayısal değişkenlere tanımlandıklarında otomatik olarak "0" değeri atanır.

Tarih değişkenleri dahili olarak 0 değerine atanır; aynı şekilde Gün, Hafta, Yıl ya da Saat, Dakika, Saniye fonksiyonlarıyla da değeri "0" a dönüşür.

Karakter dizisi değişkenleri tanımlandığında, boş bir ("") karakter dizisi atanır.

Diziler

LibreOffice Basic özel bir değişken tipi tarafından tanımlanmış tek veya çok boyutlu dizileri tanır. Diziler programlardaki listeleri ve tabloları düzenlemek için uygundur. Bir dizinin özel öğeleri sayısal bir indeksle adreslenebilir.

Diziler Dim durumu ile tanımlanmak zorundadır. Bir dizinin dizin aralığını tanımlamanın farklı yolları vardır:


    Dim Text$(20)       '21 elements numbered from 0 to 20'
    Dim Text$(5,4)      '30 elements (a matrix of 6 x 5 elements)'
    Dim Text$(5 To 25)  '21 elements numbered from 5 to 25'
    Dim Text$(-15 To 5) '21 elements (including 0), numbered from -15 to 5'

Dizin aralığı pozitif ve negatif sayılar içerebilir.

Sabitler

Sabitler değişmez bir değere sahiptir. Programda bir kere tanımlanırlar ve tekrar tanımlanamazlar:


Const ConstName=Expression

Please support us!