3. DEĞİŞKENLER

Preview:

DESCRIPTION

3. DEĞİŞKENLER. Değişkenlerin kullanım ve tanımlanma şekli, o dilde program yapmayı ve programların anlaşılırlığını etkileyen önemli faktörlerden biridir. Değişkenler program içinde yer alan geçici veri alanlarını temsil ederler. - PowerPoint PPT Presentation

Citation preview

3. DEĞİŞKENLER3. DEĞİŞKENLER

• Değişkenlerin kullanım ve tanımlanma şekli, o dilde program

yapmayı ve programların anlaşılırlığını etkileyen önemli

faktörlerden biridir.

• Değişkenler program içinde yer alan geçici veri alanlarını temsil

ederler.

• Değişkenin tanımlanması hafızada ayrılacak hafıza miktarının

belirli olmasını sağlar.

• Değişkenlerin mutlaka bir adı ve tipi vardır.

• Bir değişken kullanılmadan önce tanımlanır. Bu tanımlama

değişken kapsamına göre yapılır.

• VB’de değişkenleri kullanmadan önce tanımlama mecburiyeti

programcının seçimine bırakılmıştır.

Değişken adlandırılmasıyla ilişkin kurallar:

• Bir harf ile başlamalıdır.

• Nokta içermezler.

• 255 karekterden fazla olmazlar. ( Kontrol adları, form adları, class

ve modül adları 40 karekteri geçmez)

• Bir Visual Basic deyimi adlandırmada kullanılmaz.

• Kapsama alanı içinde tek olmalıdır.

Dim Değişken As VeriTipi Tanımlama :

Tam SayıOndalıklı SayıTarihKarakterMantıksal

VERİ TİPLERİVERİ TİPLERİ

Integer Long Single Double Currency Date

String

Boolean

Byte

Variant

Örnek:

Eğer değişkene bir değer atanmazsa değişkenin içeriği sıfır veya “ ” olur.

Private Sub Form_Load()

End Sub

Dim Ad As String

Dim Maas As Currency

Dim D_tarihi As Date

Dim Adres As String

Dim Sira As Integer

Integer

• Visual Basic’te tam sayı değişkenler için veri tipidir.

• Aralık : –32768 ile +32767.

• Bellekte 2 byte yer kaplarlar.

Private Sub Form_Load()

Dim A As Integer, B As Integer, C As Integer, Maas As Integer

Oran% = 100

A = 100

B = Oran*A

C = B + A – 1000

Maas= 32767

End Sub

Örnek:

DefInt veya degişken sonuna % karakteri ileVeri tanımlama:

Long

• Visual Basic’te daha büyük tam sayı değişkenler için veri tipidir.

• Aralık : -2,147,483,648 ile +2,147,483,647.

• 4 byte yer kaplarlar.

Private Sub Form_Load()

Dim a As Long

a=50000

b&=600000

c& = (b /a) * 10000

End Sub

Örnek:

DefLng veya degişken sonuna & karakteri ileVeri tanımlama:

Single

• Tam sayı olmayan sayılar bir veri tipidir. Kayan-noktalı sayı olarak

isimlendirilir. 7 haneye kadar hassastır. Daha sonrası yuvarlatılır.

• Negatif sayılar için aralık: -3.402823E38 ile –1.401298E-45.

• Pozitif sayılar için aralık: 1.401298E-45 ile 3.402823E38.

• 4 byte yer kaplarlar.

Private Sub Form_Load()

Dim pi As Single

pi=3.1415

alan!=pi*2.25*2.25

End Sub

Örnek:

DefSng veya degişken sonuna ! karakteri ileVeri tanımlama:

Double

• En büyük sayısal degerin veri tipidir. 16 haneye kadar hassastır.

• Negatif sayılar için aralık: -1.797693134862232E308

-4.94065645841247E-324

• Pozitif sayılar için aralık : 4.94065645841247E-324

1.797693134862232E308

• Hafızada 8 byte yer kaplarlar.

Private Sub Form_Load()

Dim a1 As Double, b1 As Double, c1 As Double

a1=50000

b1=600000

c1=340.56

End Sub

DefDbl veya degişken sonuna # karakteri ileVeri tanımlama:

Örnek:

Currency

• Sayısal tipdeki veriler için tanımlanmış özel bir veri tipidir.

• 4 hane ondalık kısmı olmak üzere toplam 19 haneden oluşur.

• Aralık: -922,337,203,685,477.5808 ile 922,337,203,685,477.5807.

• 8 byte yer kaplarlar.

Örnek:

DefCur veya degişken sonuna @ karakteri ileVeri tanımlama:

Private Sub Form_Load()Dim Maas As Currency , Borc As CurrencyMaas = 500000000 Borc = 68000000Zayi@ = 340000.56End Sub

Date

• Tarih türündeki veriler için tanımlanmış bir veri tipidir.

• Aralık: 1 Ocak 100 ile 31 Aralık 9999.

• 8 byte yer kaplarlar.

Örnek:

DefDateVeri tanımlama:

Private Sub Form_Load()

Dim Dogum_tarihi As Date , Evlenme_Tarihi As Date

Dogum_tarihi =#Dec,9,1977#

Evlenme_Tarihi=#May,15,1998#

End Sub

String

• Metin türü veriler için tanımlanmış bir veri tipidir.

• 16 bitlik versiyonda 0 ile 65538 arasında, 32 bitlik versiyonda

ise 0 ile 2,000,000,000 arasında karakter alabilir.

• 2 byte yer kaplarlar.

Örnek:

Veri tanımlama:

Private Sub Form_Load()Dim adı As String , soyadı As Stringadı =”,Ali”soyadı = ”Soylu”tc_kimlik_no$="13239700672"End Sub

DefStr veya degişken sonuna $ karakteri ile

Dim degisken as string*sınır ile tanımlanırsa karakter sayısı sınırlandırılabilir.

Boolean

• Mantısal veriler için tanımlanmış bir veri tipidir.

• İki seçenekten birisini alabilir. Bunlar True (-1) veya False (0)

degerleridir.

• 2 byte yer kaplarlar.

Örnek:

DefBoolVeri tanımlama:

Private Sub Form_Load()

Dim Durum As Boolean

Durum = True

End Sub

Byte

• 1 byte’lık işaretsiz tamsayı tipidir.

• 0-255 arasında değer alabilir.

Veri tanımlama: DefByte

Byte, Integer ve Long tipindeki değişkenlere ondalık sayı atanırsa, sayı

en yakın tamsayıya yuvarlanır.

Dim i As Integer

i=4.3 ‘ i=4 olarak atanır.

i=4.5 ‘ i=5 olarak atanır.

i=4.6 ‘ i=5 olarak atanır.

Örnek:

Variant

• Değişken tanımlarken veri tipi verilmemişse Variant ele alınır.

• Variant tip değişkenler daha önce anlatılan tiplerden herhangi biri

gibi işlem görebilir ve programın çalışması esnasında tipi

değişebilir.

Veri tanımlama: DefVar

a=5 ’ Integer

a=a+450234 ‘ Long

a=5.7 ‘ Single

a=“abc” ‘ String

Örnek:

Değişken Kapsamı

• Değişkenler kapsam bakımından genelde üçe ayrılırlar: Genel

(global) seviye, Modül (module) seviye ve Yerel (procedure) seviye

değişkenler.

• Global değişkenler programın bütün yordamları (procedure)

tarafından kullanılabilirken, yerel değişkenler sadece

tanımlandıkları yordamda (procedure) kullanılırlar.

• Buna göre değişken kapsamı şu şekilde arttırılabilir: Procedure

level, Module level, Global level.

Değişken Bildirimi

• Visual Basic kodu iki yönteme göre çalışır.

• Implicit: Değişken bildirimi gerekli değil.

• Explicit: Değişken bildirimi gerekli.

General-Declerations’ a Option Explicit

yazılmalıdır.

Procedure (Yordam) Level

• Bu değişkenler sadece tanımlandıkları fonksiyon veya alt program

içinde kullanılırlar.

• Dim veya Static deyimi ile tanımlanır.

• Bu değişkenler ilgili formun/modülün General-Declarations kısmında

tanımlanırlar ve ilgili formun/modülün tüm prosedürlerinde

kullanılabilirler.

• Dim veya Private deyimi ile tanımlanabilirler.

Module Level

Dim ad As StringStatic numara As Integer

Örnek:

• Bir değişkenin projedeki tüm modüllerde/formlarda kullanılabilmesi

için ilgili değişken Public deyimi ile tanımlanır.

• Bu tür değişkenler General Declarations bölümünde

tanımlanmalıdır.

Global Level

Public pi As SingleÖrnek:

Statik Değişkenler

• Yerel (local) olarak tanımlanan değişkenler tanımlandığı alt program

veya fonksiyon çalışması bittikten sonra bellekten atılır.

• İlgili prosedür ikinci kez çalıştığında yerel değişkenler eski

değerlerinden değil baştan (string ise “ “, sayı ise 0’dan) başlar.

• Yerel olarak tanımlanan bir değişkenin değerinin tanımlandığı alt

program veya fonksiyonun çalışması bittikten sonra da değerinin

korunması isteniyorsa Dim yerine Static deyimi kullanılır.

Private Sub Command1_Click()Dim xx=x+1msgbox (“bu komut düğmesi” & x & “defa tıklandı”)End Sub

Bir komut düğmesinin kaç defa tıklandığını bulmak için aşağıdaki tanımlamaları inceleyelim.

Örnek:

Örnek: Private Sub Command1_Click()Static xx=x+1msgbox (“bu komut düğmesi” & x & “defa tıklandı”)End Sub

Örnek:

Privated Sub Command1_Click()

x = 5

y = “BIL1002”

End Sub

Örnek:

Private Sub Command1_Click()

Dim x As Integer, y As String

x = 5

y = “BIL1002”

End Sub

(General Declarations) Option Explicit

Tanımlama gerekli !

Tanımlama gerekli değil !

Modül1

Public Toplam

Dim X

Procedure 1

Dim A

Toplam, Sonuc, X, A değişkenlerine ulaşılabilir.

Y, B, C, D değişkenlerine ulaşılamaz.

Procedure 2

Dim B

Toplam, Sonuc, X, B değişkenlerine ulaşılabilir.

Y, A, C, D değişkenlerine ulaşılamaz.

Modül2

Public Sonuc

Dim Y

Procedure 3

Dim C

Toplam, Sonuc, Y, C değişkenlerine ulaşılabilir.

X, A, B, D değişkenlerine ulaşılamaz.

Procedure 4

Dim D

Toplam, Sonuc, Y, D değişkenlerine ulaşılabilir.

X, A, B, C değişkenlerine ulaşılamaz.

VB projesinde A, B, C, D, X ve Y değişkenleri için tanımlamalar.Örnek:

Veri Tipi Değiştirme İşlemleri

• Bir tipteki bir değerin başka bir veri tipine çevrilmesi gerektiğind

VB tarafından sağlanan standard fonksiyonlar kullanılır.

Cint(değişken) : integer tipine dönüştürür.

Clng(değişken) : long tipine dönüştürür.

Csng(değişken) : single tipine dönüştürür.

Cdbl(değişken) : double tipine dönüştürür.

Ccur(değişken) : currency tipine dönüştürür.

Cdate(değişken): date tipine dönüştürür.

Cbyte(değişken): byte tipine dönüştürür.

Cvar(değişken) : variant tipine dönüştürür.

Cbool(değişken): boolean tipine dönüştürür.

Isnumeric(değişken)

• Verilen değişkenin içeriğinin bir sayı olup olmadığı kontrol edilir.

• Eğer sayı ise geri dönen değer True (-1) olur.

SABİTLERSABİTLER

• Sabitler, sahip oldukları değerler ile kullanılan bilgi tanımlamalarıdır.

• Özellikle belli (bilinen) değerlerin kullanımını sağlar.

• Kodlamayı ve kodun okunabilirliğini kolaylaştırır.

• Sabitlerin değeri bir sayı ya da karakter olabileceği gibi bir ifade de

olabilir.

• Sabitlerin kapsamı da değişken kapsamı kurallarına benzer.

Const pi = 3.141559 Const a = “Tork“ Const b = “Nm“

Private Sub Form_Activate()Print a, b, piEnd Sub

Örnek:

Const adıTanımlama:

ARİTMETİK İŞLEMLERARİTMETİK İŞLEMLER

VB’te kullanılan aritmetik işlemler ve matemetiksel işaretler şunlardır.

• Toplama +

• Çıkarma -

• Çarpma *

• Bölme /

• Tamsayı bölme \

• Bölmede kalan mod

• Üs alma ^

• Karakök alma sqr()

Toplama ve çıkarma işlemi

• Toplama ve çıkarma işlemi iki basit matematiksel işlemdir.

• Toplama işleminde sayıların toplanma sırası önemli değildir. Ancak

çıkarma işleminde işlemler soldan sağa doğrudur

Sonuc = 20+12Sonuc = 20-12

Örnek:

Örnek: Önce ikinci sayı birinci sayıdan çıkarılır. Ardından kalandan üçünçü sayı çıkarılır. (Sonuç=3)

Sonuc = 20+12+5Sonuc = 20-12-5

String verilerin toplanması

• İki karekter bilgi + veya & operatörü ile birleştirilebilir.

Örnek: Sonuc = “Visual” + “ ”+ “Basic”

Sonuc = “Visual” & “ ”& “Basic”Sonuc = “Visual Basic”

Çarpma, Bölme ve Tamsayı Bölme İşlemleri

• Çarpma işlemi toplama işlemi gibi düzdür. Sayılar sırasıyla birbiri ile

çarpılarak sonuç elde edilir.

Sonuc = 20*12Örnek:

• Bölme işleminde ise birinci sayının ikinci sayıya bölünmesiyle elde

edilir.

Sonuc = 20/12Örnek: Sonuc = 1.66

• Tamsayı bölme işleminde bölüm sonucunun tamsayı kısmı

döndürülür.

Sonuc = 20\12Örnek: Sonuc = 1

Sonuc = 240

Üs ve Mod İşlemi

• Bir sayının üs alma işlemi için ^ operatörü kullanılır.

Örnek: Sonuc = 3 ^ 2

Sonuc = 10 ^ 0

Sonuc = 10 ^ -2

Sonuc = 9

Sonuc = 1

Sonuc = 0.01

• Mod işlemi bölme işleminde kalanı verir.

Sonuc = 11 mod 3Örnek: Sonuc =2

Aritmetik Operatörlerde İşlem Önceliği

• Aritmetik ifadelerde öncelik parantez içindeki ifadededir.

• Parantez kullanılmıyorsa operatörlerin öncelikleri aşağıdaki gibidir

1. Üs alma

2. Negatif

3. Çarpma ve bölme

4. Tamsayı bölme

5. Mod işlemi

6. Toplama ve çıkarma

Karşılaştırma operatörleri

• Bu operatörler ile verilen ifadeler arasında karşılaştırmalar yapılır.

1. = operatörü (eşit)

2. < > operatörü (eşit değil)

3. >, >= operatörü (büyük, büyük eşit)

4. <, <= operatörü (küçük, küçük eşit)

A=12: B=45

Sonuc = (A=B) Sonuc=False

C=23: D=23

Sonuc = (C=D) Sonuc=True

Örnek:

Mantıksal Operatörler

1. Aritmetik operatörler^, *, /, \, mod, +,-, &

2. Karşılaştırma operatörleri=, <>, <, >, <=, >=

3. Mantıksal operatörlernot, and, or, xor

VB Operatörlerinde İşlem Önceliği

1. AND (VE)

Örnek : if a>50 and b>70 then

2. OR (VEYA)

Örnek : if a>50 or b>70 then

3. NOT (DEĞİL)

Örnek : if not a=50 then

4. XOR (AYNI İSE 0 FARKLI İSE 1 YAP)

Örnek : Print 11001101 xor 00110000 ’11111101

Recommended