You are on page 1of 16

Değişkenler

Değişkenler bir bilginin bellekteki konumunu temsil eden sembolik isimlerdir. 
Bilgisayarda hemen hemen tüm işlemler bellekte yapılır. Program 
çalıştırıldığında değişken ve bu değişkenin türüne göre bellekte yer ayrılır. 
Program içerisinde veriler bu değişkenlere atanarak işlemler dinamik hale 
getirilir ve kolayca işlenebilir. Değişkenler için en önemli iki özellik değişkenin 
veri tipi ve faaliyet alanıdır. Değişken isimlendirmesinde bazı kurallara 
uyulmalıdır.

1. Değişken mutlaka bir harf (İngiliz alfabesinin 26 harfinden biri)  ile 
başlamalıdır. Rakam ve alt çizgi (_) karakterleri de değişken isminde 
kullanılabilir.
2. Değişken ismi 40 karakteri geçmemeli.
3. Visual C#  Komutları ve fonksiyonları kullanılmamalıdır
4. Değişken adı arasında boşluk bulundurmamalıdır.
5. C# ‘da değişken adlandırmada küçük‐büyük harf ayırımı vardır. Yani program 
içinde ,  AD, ad ve Ad farklı değişkenleri ifade etmektedir.

Geçerli değişken isimleri : baslamaZamani, ad_soyad, x5
Geçersiz değişken isimleri : 3x, while
Veri Tipleri
Değişkenlerin Tanımlanması
C#’da program içinde kullanılacak değişkenler, veri tipi ile 
birlikte tanımlanır.

Örneğin :
int sayi1;
string soyad;
double x,y;

Değişkenler tanımlandıkları yerlere göre “lokal” veya 
“global” olmak üzere ikiye ayrılırlar. Lokal değişkenler bir 
metod içerisinde tanımlanan ve bu metodun dışında geçerli 
olmayan değişkenlerdir. Global değişkenler ise  kullanılan 
sınıfa özgü ve sınıfın her yerinde kullanılan değişkenlerdir.
Diziler
Aynı özelliğe sahip elemanların bir araya getirdiği gruba dizi denir. Diziler 
tek boyutlu, iki veya üç boyutlu olabilir. Dizideki herhangi bir elemanı 
tanımlayabilmek için bir değer vermek yeterli oluyorsa bu dizilere tek 
boyutlu diziler denir. Matematikteki sayı dizileri tek boyutlu diziler için iyi 
bir örnek olabilir. Eğer dizideki bir elemanı tanımlamak için en az iki 
değer vermek gerekiyorsa bu dizilere de iki boyutlu diziler denir. Bunlara 
en güzel örnek matematikteki matrislerdir.

Diziler belirli kurallara uymak suretiyle tanımlanabilir. Dizilerin ilk 
elemanı 0. eleman olmaktadır. 11 elemanlı bir sayilar dizisi aşağıdaki 
şekilde tanımlanır:

int [ ] sayilar=new int [11];

İki veya üç boyutlu diziler ise boyutlar arasına virgül konularak tanımlanır. 
Örneğin 4 satır 7 sütünlu bir c matrisi aşağıdaki şekilde tanımlanır : 

int [ , ] c = new int [4,7];


Sabitler
Programda değerinin değişmesini istemediğiniz 
değerler için tanımlanır.

Const veri_tipi sabit_ismi = değeri;

Örnek :   const float pi = 3.1415;

şeklinde yapılır. Sabitin değerinin program içinde 
değiştiremeyiz.
Değişkenlere Başlangıç Değeri Verilmesi

Varsayılan olarak sayısal değişkenlerin değeri 0, alfabetik 
değişkenlerin değeri boş karakterdir. Değişkenlere başlangıçta 
değer vermek istenirse, aşağıdaki şekilde yapılabilir :

int x=3;
string adSoyad = “Ümit KOCABIÇAK”;
float boy=1.83;
bool evli = true;

Dizinin elemanlarına değer aktararak aşağıdaki şekilde 
tanımlayabiliriz :

string[ ] gunler = new string[ ] {“Pzt”, “Salı”, “Çar”, “Per”, “Cuma”, “Cmt”, “Pzr”};


İfadeler
Her türlü sabit, değişken ve fonksiyonlardan meydana gelen ve program satırında eşitliğin sağ tarafında yer alan 
kısma ifade adı verilir. İfadelerin sol tarafında bir değişken ve onu izleyen atama (=) operatörü yer alır. Sağ taraftaki 
ifadede elde edilen değer, sol taraftaki değişkene (veya özelliğe) aktarılır.

İfadelere örnekler :

hiz = yol / zaman;
x = y * z + 3;

C#’da satırlar (;) ile sonlandırılır. İfade bir satıra sığmazsa, alt satıra devam edilebilir. (;) işaretine kadar satır devam 
edecektir.

Programın değişik yerlerinde, açıklama yapma ihtiyacı doğabilir. Açıklama amacıyla kullanılacak satırlar // ile 
başlamalıdır.

Örnek :
// Bu program ikinci derece denklemin köklerini bulur.
// DELTA hesaplanıyor.
D = B * B – 4 * A * C;

Birçok satır açıklama amacıyla kullanılacaksa, açıklama satırları /* ile */ arasında yer almalıdır.

Örnek :
/* bu program bileşik faiz
hesabını yapar. */
Tip Dönüşümü
Şöyle bir örnekle tip dönüşümünü açıklamaya çalışalım. A ve b değişkenleri byte veri tipi 
olan değişkenler olsun. C’de byte tipinde ve a ile b’nin toplamı olan bir değişken olsun. 
Program çalıştığında hata verecektir. Çünki a ve b’nin toplamı int tipinde bir değer verir.

byte a=54, b=33;
byte c=a+b;

Eğer byte c=a+b; yerine int c=a+b; yazsaydık hata vermeyecekti. Çünki toplam int veri 


tipinin içine sığabilecekti. Yani dönüştürülecek veri tipinin boyutu hedef veri tipinin 
boyutundan büyükse, C# bunu otomatik olarak dönüştüremez ve hata verir. 

float d = 2.68F;
int e = (int) d;

Burada float veritipinde olan d değişkeni int veritipinde olan e değişkenine atanıyor. Hata 


vermemesi için d değişkeninin soluna (int) yazıp dönüşümü sağlıyoruz. e değişkeninin 
değeri bu atamdan sonra 2 değerini alır.
Tip Dönüşümü
Tip dönüşümü için ayrıca Convert sınıfının metotları da kullanılabilir.

int e = Convert.ToInt32(d);

şeklinde de yazabiliriz.
Sayısal İfadeler

Bilgisayarda aritmetik işlemlerde bir öncelik derecesi vardır. Bu öncelik derecesi aşağıdaki gibi sıralanmaktadır 

1. Parantez içi
2. Çarpma veya Bölme
3. Modüler Aritmetik
4. Toplama veya çıkarma

X = X + 3 ifadesini istersek X + = 3 şeklinde yazabiliriz.

Örnekler :
A * = C   Î A = A * C
X / = 2  Î X = X / 2

Ayrıca a++; ifadesi a=a+1; ifadesiyle aynıdır. Benzer şekilde a‐‐; ifadesi de a=a‐1; ile aynıdır.


İlişki İfadeleri
İki değeri karşılaştırmak amacıyla kullanılan ifadelerdir. Karşılaştırılan değerler sayısal 
veya karakter şeklinde olabilir.
Mantıksal İfadeler
Bu ifadeler iki veya daha fazla ifade arasında kullanılırlar. Mantıksal 
operatörlerle iki veya daha fazla ilişkiyi birbirine bağlarlar, sonunda Doğru ya da 
Yanlış değerini hesaplarlar. Bunlardan en önemlileri ! (Değil), && (ve) ve || 
(veya) ‘dır. Aşağıdaki tabloda bu operatörlerin doğruluk değerleri gösterilmiştir. 
Visual Basic ‘te Doğru ifadesi olarak True kelimesi, Yanlış ifadesi olarak False
kelimesi kullanılır. (D: Doğru, Y: Yanlış)
String Metotlar
1) Sayısal bir değişkeni string’e (karakter) çevirmek için ToString metodu kullanılır. Özellikle formlarda text kutularına 
yazdırılırken fayda sağlar. Aynı etkiyi Convert.ToString(ifade)’de sağlar.

x = 2.3452;
txtSayi.Text=x.ToString();

2) Özellikle kesirli sayıların noktadan sonraki istenilen miktardaki hanelerini göstermek için, String.Format metodu 
kullanılır.

x = 2.3452;
txtSayi.Text=String.Format(“{0:f3}”,x);

şeklinde bir program parçasında x değişkeninin noktadan sonra 3 hanesi gösterilecektir (2.345).

3) Alfabetik değişkenlerin karakter sayısını bulmak için, Length özelliğinden yararlanılır:

ad=”Sakarya”;
uzunluk=ad.Length;  // uzunluk değeri 7 bulunur

4) Alfabetik değişkenlerin belli bir kısmını elde etmek için Substring metodu kullanılır.

ad=”Sakarya”;
ad2=ad.Substring(3,2);  // sonuçta ka elde edilir
String Metotlar
5) Alfabetik ifadeleri büyük harfe dönüştürmek için ToUpper, küçük harfe dönüştürmek için ToLower metotları 
kullanılır.

ad=”sakarya”;
buyuk=ad.ToUpper();  // sonuçta SAKARYA elde edilir
kucuk=ad.ToLower();  // sonuçta sakarya elde edilir

6) Alfabetik ifadedeki herhangi bir karakteri başka bir karakterle değiştirmek için Replace metodu kullanılır.

ad=”sakarya”;
ad=ad.Replace(‘a’ , ‘*’);  // sonuçta s*k*ry* elde edilir

7) Alfabetik ifadedeki baştaki ve sondaki gereksiz boşlukları kaldırmak için Trim metodu kullanılır.

ad=”      Sakarya    ”;
ad=ad.Trim();  // sonuçta ad=”Sakarya” elde edilir.

8) Alfabetik bir ifadeyi char tipi bir diziye çevirmek için ToCharArray metodu kullanılır.

ad=”sakarya”;
char[] dizi=ad.ToCharArray(); //sonuçta dizi[0]=’s’, dizi[1]=’a’, dizi[6]=’a’
Random Sayı Üretme
Bazı uygulamalarda rasgele sayılara ihtiyacımız olabilir. İlk önce random sayı için Random sınıfından 
bir nesne oluşturulur :

Random rasgele_sayi = new Random( );

Rasgele tamsayı üretmek için Next metodu kullanılır :

rasgele_sayi.Next(10);

Next metodunun değeri, oluşturulacak rasgele sayının üst değerini vermektedir. Yukarıdaki örneğe 
göre 0 ile  9 arasında  tamsayı rasgele sayı üretilecektir.

100 ile 200 arasında rasgele sayı üretmek için;

rasgele_sayi.Next(101)+100;

ifadesini yazmalıyız.
Matematik Fonksiyonlar
Buradaki her bir matematik fonksiyonu Math sınıfından gelmektedir. Bu sebeple 
fonksiyon isminden önce Math sınıfını yazmalıyız.

You might also like