değerler ve değişkenler
DESCRIPTION
Değerler ve Değişkenler. Values & Variables. Değişkenlerin Özellikleri. Tipi olmalıdır Veri içerirler Küçük – Büyük harf ayrımı vardır Değişken isimleri rakamla başlamaz, rezerve edilmiş kelimeler olamaz. Anahtar Kelimeler (Keywords). Değişken Tanımı. int x = 3;. Tip. Değer. Değişken. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/1.jpg)
1
Değerler ve Değişkenler
Values & Variables
![Page 2: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/2.jpg)
2
Değişkenlerin Özellikleri
Tipi olmalıdır Veri içerirler Küçük – Büyük harf ayrımı vardır Değişken isimleri rakamla
başlamaz, rezerve edilmiş kelimeler olamaz
![Page 3: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/3.jpg)
3
Anahtar Kelimeler (Keywords)
![Page 4: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/4.jpg)
4
Değişken Tanımı
int x = 3;
Tip
Değişken
Değer
İfade sonu
![Page 5: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/5.jpg)
5
Değişken Tanımı
int nTamsayi;
string sYazi; int nTamsayi = 42;string sYazi = “Bu bir satır!";
int nTamsayi;string sYazi;... nTamsayi = 42;
sYazi = " Bu bir satır!";
![Page 6: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/6.jpg)
6
Değer atama zorunluluğu
string sDegersiz;MessageBox.Show(sDegersiz, “merhaba!",
MessageBoxButtons.OK);
HATA!
![Page 7: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/7.jpg)
7
Değişken Tipleri (Types)
Temel Tipler Tamsayılar Kayar nokta sayıları Karakterler Karakter Dizeleri Tarihler
![Page 8: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/8.jpg)
8
Tamsayılar (Integers)
short 2 bytes (–32,768 <-> 32,767) short sval = -12;
ushort 2 bytes (0 <-> 65,535) ushort sval= 12;
int 4 bytes (–2,147,483,647 <-> 2,147,483,647)
int nval = -12500; uint 4 bytes (0 <-> 4,294,967,295)
uint nval = 12500; long 8 bytes
long lVal = -548444101; ulong 8 bytes
Ulong lVal = 548444101
![Page 9: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/9.jpg)
9
Kayar nokta sayıları(Floating Point Numbers)
float 4 bytes float fVal = -1,2;
double 8 bytes double dVal = -3.565;
decimal 8 bytes decimal dVal = -3456.343;
![Page 10: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/10.jpg)
10
İfadeler (Expressions)
İfadeler değişkenler üzerinde işlem yapmaya yarar.
Bilinen tipte değer döndürürler. İki tip ifade vardır
Operatörler Fonksiyonlar
![Page 11: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/11.jpg)
11
Aritmetik ifadeler Birden fazla değişkene ihtiyaçları
vardır. Matematiksel işlem yaparlar
+ (Toplama operatörü) - (Çıkartma operatörü) * (Çarpma operatörü) / (Bölme operatörü) % (Modülo operatörü) ….
![Page 12: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/12.jpg)
12
Aritmetik ifadeler Kısaltmalar
int m = 5;int n = 4;
m = m + n; eşittir m += n;
Yani her iki işlemin sonucunda da m 9 değerini alırken n ’nin değeri değişmez.
![Page 13: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/13.jpg)
13
Tekli işleçler Tek değişken üzerinde işlem
yaparlar ++ arttırma işleci
i++; i = i + 1; demektir. -- azaltma işleci
i --; i = i - 1; demektir. Değişkenin önünde veya arkasında
olmasına göre farklı sonuçlar verir. Yani “i++” ile “++i” aynı değildir.
![Page 14: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/14.jpg)
14
Arttırma ve Eksiltme İşlemleri ++k k'yı 1 arttırır ve ++k'yı kullanan
deyime yeni değeri döndürür. k++ k'nın o andaki değeri kullanılır ve
kullanıldıktan sonra değeri bir arttırılır. --k k'yı bir azaltır ve azaltılan değer –k
ifadesini bulunduran deyimde kullanılır. k-- k'nın o andaki değeri kullanılır
sonra k bir azaltılır.
![Page 15: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/15.jpg)
15
Örnekint k=0, m;int k=0, m;
m = ++k;m = ++k;
m m ' nin değeri 1 vek k ' nin değeri de 1 olur
int k=0, m;int k=0, m;
m = k++;m = k++;
m m ' nin değeri 0 vekk ' nin değeri 1 olur.
int k=5, m, n=2;int k=5, m, n=2;
m = --k + n;m = --k + n;
m m ' nin değeri 6 vek k ' nin değeri de 4 olur
int k=0, m, n=7;int k=0, m, n=7;
m = k++ + --n;m = k++ + --n;
m m ' nin değeri 6 vekk ' nin değeri 1 ven ' nin değeri 6 olur.
![Page 16: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/16.jpg)
16
Alıştırma
Aşağıdaki program sonucunda, değişkenlerin değerleri ne olur?
int i, j, k;int i, j, k;
i = 2;i = 2;j = 3 + i++; j = 3 + i++; k = 3 + ++i; k = 3 + ++i; i *= ++k + j--; i *= ++k + j--; i /= k-- + ++j; i /= k-- + ++j;
![Page 17: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/17.jpg)
17
Alıştırma Devam Şıkların birbirlerini etkilemediği
düşünülürse her bir satırdan sonra m değişkeninin değeri ne olur?
int i = 0, j = 6, k = 4 , m = 5;int i = 0, j = 6, k = 4 , m = 5;
•m = k-- + ++i; m = k-- + ++i; •m *= j % 4;m *= j % 4;•m += k++ + (j-- * ++i);m += k++ + (j-- * ++i);
![Page 18: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/18.jpg)
18
İşlem Sırası Bir ifade içindeki işlemlerin yapılış
sırasında "İşlem Sırası" adı verilir.
C# dilinde (ya da diğer dillerde) bazı operatörlerin işlem öncelikleri vardır.
Verilen bir ifadede sonucun ne olduğu bilmek için işlem önceliklerinin bilinmesi gereklidir.
![Page 19: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/19.jpg)
19
Örnek PÜBÇEÇ kuralını kullanarak öncelikleri
belirleyebilirsiniz.
P P ParantezParantezÜ Ü ÜstelÜstelBB BölmeBölmeÇÇ Çarpma Çarpma EE EklemeEklemeÇÇ ÇıkartmaÇıkartma
P P ParantezParantezÜ Ü ÜstelÜstelBB BölmeBölmeÇÇ Çarpma Çarpma EE EklemeEklemeÇÇ ÇıkartmaÇıkartma
1 + 2 * 3 - 4 / 5 = ?1 + 2 * 3 - 4 / 5 = ?1 + 2 * 3 - 4 / 5 = ?1 + 2 * 3 - 4 / 5 = ?
1 + (2 * 3) – (4 / 5)1 + (2 * 3) – (4 / 5)1 + (2 * 3) – (4 / 5)1 + (2 * 3) – (4 / 5)
6.26.26.26.2
![Page 20: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/20.jpg)
20
Örnek (sonuç) İfadede tamsayılar kullanılırsa, bölme
işlemleri tamsayı sonucu verir (Diğer bir deyişle ondalıklı kısım yok edilir)
4/5 = 04/5 = 0 (tamsayı bölümü)(tamsayı bölümü)
4/5 = 04/5 = 0 (tamsayı bölümü)(tamsayı bölümü)
1 + (2 * 3) – (4 / 5)1 + (2 * 3) – (4 / 5)1 + (2 * 3) – (4 / 5)1 + (2 * 3) – (4 / 5)
77 77
![Page 21: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/21.jpg)
21
Alıştırma
Farklı veri türleri aynı işlemlerle farklı sonuçlar verebilir.
Sonraki iki sayfadaki kodları yazarak programların çıktılarını görünüz.
Aradaki farkı yorumlayınız.
![Page 22: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/22.jpg)
22
Alıştırma (devam)
![Page 23: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/23.jpg)
23
Alıştırma (devam)
![Page 24: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/24.jpg)
24
Karakterler
char 1 byte 0-256
'a' 'z' 'A' 'Z' '?' '@' '0' '9''a' 'z' 'A' 'Z' '?' '@' '0' '9'
Özel karakterlerÖzel karakterler “ “\”\” işareti başta konularak işareti başta konularak gösterilir.gösterilir.
'\n''\n' : alt satıra geç karakteri : alt satıra geç karakteri'\t''\t' : sekiz karakter sonraya atla : sekiz karakter sonraya atla'\'''\'' : tek tırnak : tek tırnak'\\''\\' : \ işareti (ters bölü) : \ işareti (ters bölü)ve diğerlerive diğerleri
![Page 25: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/25.jpg)
25
Karakter Dizileri
Karakter dizileri (string) arka arkaya gelen karakterlerden oluşmuştur.
Dizenin sonlandırılmasında ‘\0’ karakteri kullanılır.
Örnek : “Merhaba!” “birinci satır\n ikinici satır \n üçüncü satır” “” Boş dizi
![Page 26: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/26.jpg)
26
Karakter Dizileri (Devam)
Özel sınıf : “string” sınıfı Unicode – 16 bit Örnek :
string myString = “Merhaba!”; Verbatim strings
string myString = @“2.5” disket”;
![Page 27: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/27.jpg)
27
string işlemleri
İki string’i birleştime
Sonuç : “Merhaba Dünya!”
![Page 28: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/28.jpg)
28
string işlemleri
string içerisinde arama int IndexOf ()
Sonuç : 1
Alıştırma : int LastIndexOf() fonksiyonunu msdn’den araştırıp nasıl ve ne amaçla kullanıldığını öğreniniz.
![Page 29: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/29.jpg)
29
string işlemleri
string’i bölmek string Substring()
Sonuç : “rha”
![Page 30: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/30.jpg)
30
Alıştırma
Adınızı ve soyadınızı ayrı ayrı iki string içerisine yükleyiniz.
Bu iki string’i üçüncü bir string içerisine toplayınız.
Sonucu ekrana yazdırınız.
![Page 31: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/31.jpg)
31
Tarih
Tarih işlemlerinde C# dili için özel “DateTime” sınıfı kullanılmaktadır.
DateTime sınıfı “yıl,ay,gün,saat,saniye,milisaniye ” bilgilerini tutabilir.
![Page 32: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/32.jpg)
32
DateTime Nesnesi Oluşturma
DateTime dt = new DateTime(yıl,ay,gun);
Tip
Değişken Adı
Yeni bir nesne
Oluşturma
Başlangıç
Değerleri
![Page 33: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/33.jpg)
33
Örnek
Yeni bir nesne oluşturuluyor
![Page 34: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/34.jpg)
34
Sabit (Constant) Değişkenler Değerleri değiştirilemez. Tipleri vardır. İşlemlerde kullanılır ama atama
yapılamaz. Tanım ifadesinin başına “const” anahtar
kelimesi konularak oluşturulur. Değerleri tanımlama anında belirlenir,
sonradan değiştirilemez. const int nVar = 34;
![Page 35: Değerler ve Değişkenler](https://reader035.vdocuments.net/reader035/viewer/2022081416/568147c0550346895db502d2/html5/thumbnails/35.jpg)
35
Örnek