3 DEKENLER Deikenlerin kullanm ve tanmlanma ekli o

  • Slides: 28
Download presentation
3. DEĞİŞKENLER • Değişkenlerin kullanım ve tanımlanma şekli, o dilde program yapmayı ve programların

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. • 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

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. Tanımlama : Dim Değişken As Veri. Tipi Tam Sayı Ondalıklı Sayı Tarih Karakter Mantıksal

VERİ TİPLERİ Integer Long Single Double Currency Date String Boolean Byte Variant Eğer değişkene

VERİ TİPLERİ Integer Long Single Double Currency Date String Boolean Byte Variant Eğer değişkene bir değer atanmazsa değişkenin içeriği sıfır veya “ ” olur. Örnek: Private Sub Form_Load() Dim Ad As String Dim Maas As Currency Dim D_tarihi As Date Dim Adres As String Dim Sira As Integer End Sub

Integer Veri tanımlama: Def. Int veya degişken sonuna % karakteri ile • Visual Basic’te

Integer Veri tanımlama: Def. Int veya degişken sonuna % karakteri ile • Visual Basic’te tam sayı değişkenler için veri tipidir. • Aralık : – 32768 ile +32767. • Bellekte 2 byte yer kaplarlar. Örnek: 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

Long Veri tanımlama: Def. Lng veya degişken sonuna & karakteri ile • Visual Basic’te

Long Veri tanımlama: Def. Lng veya degişken sonuna & karakteri ile • 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. Örnek: Private Sub Form_Load() Dim a As Long a=50000 b&=600000 c& = (b /a) * 10000 End Sub

Single Veri tanımlama: Def. Sng veya degişken sonuna ! karakteri ile • Tam sayı

Single Veri tanımlama: Def. Sng veya degişken sonuna ! karakteri ile • 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. 402823 E 38 ile – 1. 401298 E-45. • Pozitif sayılar için aralık: 1. 401298 E-45 ile 3. 402823 E 38. • 4 byte yer kaplarlar. Örnek: Private Sub Form_Load() Dim pi As Single pi=3. 1415 alan!=pi*2. 25 End Sub

Double Veri tanımlama: Def. Dbl veya degişken sonuna # karakteri ile • En büyük

Double Veri tanımlama: Def. Dbl veya degişken sonuna # karakteri ile • En büyük sayısal degerin veri tipidir. 16 haneye kadar hassastır. • Negatif sayılar için aralık: -1. 797693134862232 E 308 -4. 94065645841247 E-324 • Pozitif sayılar için aralık : 4. 94065645841247 E-324 1. 797693134862232 E 308 • Hafızada 8 byte yer kaplarlar. Örnek: Private Sub Form_Load() Dim a 1 As Double, b 1 As Double, c 1 As Double a 1=50000 b 1=600000 c 1=340. 56 End Sub

Currency Veri tanımlama: Def. Cur veya degişken sonuna @ karakteri ile • Sayısal tipdeki

Currency Veri tanımlama: Def. Cur veya degişken sonuna @ karakteri ile • 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: Private Sub Form_Load() Dim Maas As Currency , Borc As Currency Maas = 50000 Borc = 68000000 Zayi@ = 340000. 56 End Sub

Date Veri tanımlama: Def. Date • Tarih türündeki veriler için tanımlanmış bir veri tipidir.

Date Veri tanımlama: Def. 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: 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 Veri tanımlama: Def. Str veya degişken sonuna $ karakteri ile • Metin türü

String Veri tanımlama: Def. Str veya degişken sonuna $ karakteri ile • 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 arasında karakter alabilir. • 2 byte yer kaplarlar. Dim degisken sınırlandırılabilir. Örnek: as string*sınır ile tanımlanırsa karakter sayısı Private Sub Form_Load() Dim adı As String , soyadı As String adı =”, Ali” soyadı = ”Soylu” tc_kimlik_no$="13239700672" End Sub

Boolean Veri tanımlama: Def. Bool • Mantısal veriler için tanımlanmış bir veri tipidir. •

Boolean Veri tanımlama: Def. Bool • 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: Private Sub Form_Load() Dim Durum As Boolean Durum = True End Sub

Byte Veri tanımlama: Def. Byte • 1 byte’lık işaretsiz tamsayı tipidir. • 0 -255

Byte Veri tanımlama: Def. Byte • 1 byte’lık işaretsiz tamsayı tipidir. • 0 -255 arasında değer alabilir. Byte, Integer ve Long tipindeki değişkenlere ondalık sayı atanırsa, sayı en yakın tamsayıya yuvarlanır. Örnek: 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.

Variant Veri tanımlama: Def. Var • Değişken tanımlarken veri tipi verilmemişse Variant ele alınır.

Variant Veri tanımlama: Def. Var • 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. Örnek: a=5 ’ Integer a=a+450234 ‘ Long a=5. 7 ‘ Single a=“abc” ‘ String

Değişken Bildirimi • Visual Basic kodu iki yönteme göre çalışır. • Implicit: Değişken bildirimi

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. 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.

Procedure (Yordam) Level • Bu değişkenler sadece tanımlandıkları fonksiyon veya alt program içinde kullanılırlar.

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. Örnek: Dim ad As String Static numara As Integer Module Level • 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.

Global Level • Bir değişkenin projedeki tüm modüllerde/formlarda kullanılabilmesi için ilgili değişken Public deyimi

Global Level • 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 tanımlanmalıdır. Örnek: General Declarations bölümünde Public pi As Single 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.

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

Bir komut düğmesinin kaç defa tıklandığını bulmak için aşağıdaki tanımlamaları inceleyelim. Örnek: Private Sub Command 1_Click() Dim x x=x+1 msgbox (“bu komut düğmesi” & x & “defa tıklandı”) End Sub Örnek: Private Sub Command 1_Click() Static x x=x+1 msgbox (“bu komut düğmesi” & x & “defa tıklandı”) End Sub

Örnek: Privated Sub Command 1_Click() x=5 y = “BIL 1002” Tanımlama gerekli değil !

Örnek: Privated Sub Command 1_Click() x=5 y = “BIL 1002” Tanımlama gerekli değil ! End Sub Örnek: (General Declarations) Option Explicit Private Sub Command 1_Click() Dim x As Integer, y As String x=5 y = “BIL 1002” End Sub Tanımlama gerekli !

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

Örnek: VB projesinde A, B, C, D, X ve Y değişkenleri için tanımlamalar. Modül 1 Modül 2 Public Toplam Public Sonuc Dim X Dim Y Procedure 1 Procedure 3 Dim A Dim C Toplam, Sonuc, X, A değişkenlerine ulaşılabilir. Toplam, Sonuc, Y, C değişkenlerine ulaşılabilir. Y, B, C, D değişkenlerine ulaşılamaz. X, A, B, D değişkenlerine ulaşılamaz. Procedure 2 Procedure 4 Dim B Dim D Toplam, Sonuc, X, B değişkenlerine ulaşılabilir. Toplam, Sonuc, Y, D değişkenlerine ulaşılabilir. Y, A, C, D değişkenlerine ulaşılamaz. X, A, B, C değişkenlerine ulaşılamaz.

Veri Tipi Değiştirme İşlemleri • Bir tipteki bir değerin başka bir veri tipine çevrilmesi

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. • 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. Isnumeric(değişken)

SABİTLER • Sabitler, sahip oldukları değerler ile kullanılan bilgi tanımlamalarıdır. • Özellikle belli (bilinen)

SABİ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. Tanımlama: Örnek: Const adı Const pi = 3. 141559 Const a = “Tork“ Const b = “Nm“ Private Sub Form_Activate() Print a, b, pi End Sub

ARİTMETİK İŞLEMLER VB’te kullanılan aritmetik işlemler ve matemetiksel işaretler şunlardır. • Toplama + •

ARİ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. Örnek:

Toplama ve çıkarma işlemi • Toplama ve çıkarma işlemi iki basit matematiksel işlemdir. Örnek: Sonuc = 20+12 Sonuc = 20 -12 • Toplama işleminde sayıların toplanma sırası önemli değildir. Ancak çıkarma işleminde işlemler soldan sağa doğrudur Örnek: Sonuc = 20+12+5 Sonuc = 20 -12 -5 Önce ikinci sayı birinci sayıdan çıkarılır. Ardından kalandan üçünçü sayı çıkarılır. (Sonuç=3) 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

Ç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. Örnek: Sonuc = 20*12 Sonuc = 240 • Bölme işleminde ise birinci sayının ikinci sayıya bölünmesiyle elde edilir. Örnek: Sonuc = 20/12 • Tamsayı bölme döndürülür. Örnek: işleminde Sonuc = 2012 Sonuc = 1. 66 bölüm sonucunun Sonuc = 1 tamsayı kısmı

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

Üs ve Mod İşlemi • Bir sayının üs alma işlemi için ^ operatörü kullanılır. Örnek: Sonuc = 3 ^ 2 Sonuc = 9 Sonuc = 10 ^ 0 Sonuc = 10 ^ -2 Sonuc = 0. 01 • Mod işlemi bölme işleminde kalanı verir. Örnek: Sonuc = 11 mod 3 Sonuc =2

Aritmetik Operatörlerde İşlem Önceliği • Aritmetik ifadelerde öncelik parantez içindeki ifadededir. • Parantez kullanılmıyorsa

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ü

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) Örnek: A=12: B=45 Sonuc = (A=B) Sonuc=False C=23: D=23 Sonuc = (C=D) Sonuc=True

Mantıksal Operatörler 1. AND (VE) Örnek : if a>50 and b>70 then 2. OR

Mantıksal Operatörler 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 VB Operatörlerinde İşlem Önceliği 1. Aritmetik operatörler ^, *, /, , mod, +, -, & 2. Karşılaştırma operatörleri =, <>, <, >, <=, >= 3. Mantıksal operatörler not, and, or, xor