21 Oca 2016

C#'da Operatörler

AÇIKLAMALAR(COMMENT)
C# içinde 2 tip açıklama yazım şekli vardır;
  • Tek satırlı açıklama yazmak için // kullanılır
  • Açıklama birden çok satıra yazılacak ise /* ve */ karakterleri içine yazılmalıdır.
  • Açıklamalar uygulamanın çalışmasını etkilemez çünkü derleme esnasında dikkate alınmaz. Genel amaç kod karmaşasını basitleştirmektir.
OPERATÖRLER, İFADELER ve ÖNERMELER
  • Atama Operatörü      ->     = 
  • Toplama      ->     + 
  • Çıkarma       ->      – 
  • Çarpma        ->      * 
  • Bölme          ->     / 
  • Mod alma      ->     
  • ++ veya -- değişkeni değerini 1 arttırır ya da 1 azaltır 
  • += ve -= operatörleri değişkeni arttırıp/azaltıp eşitler 
  • == eşittir kontrolü (eşitse anlamına gelir)
  • != eşit değildir kontrolü 
  • > büyüktür ve < küçüktür 
  • >= büyük eşittir ve <= eşittir 
  • ?: ve ?? operatörleri tek satırda şart belirtmek için kullanılır 
  • ! değildir veya not operatörü 
  • | lojik or(veya) operatörü ve || şartlı or(veya) operatörü
  • & lojik and(ve) operatörü ve && şartlı and(ve) operatörü 
  • ^ lojik XOR operatörü 
  • ^=, &=, |= lojik eşitlemeli operatörler 
  • >> ve << shift işlemi, değişkeni 2’ye böler veya 2 ile çarpar. 
  • >>= ve <<= operatörleri sol veya sağ tarafı 2'ye bölüp eşitler.
ATAMA İŞLEMİ
            Atama işlemi için C#’ta = operatörü kullanılır. Aşağıdaki şekillerde yapılır;
int a; //a değişkeni tanımladık, henüz değer atamadık
byte b = 3; //tanımlayıp aynı zamanda da değerini verdik
float c, d, e;

double f1 = 0; //henüz ne değer alacağını bilmiyorsak böyle tanımlama yapabiliriz.
double f2 = default(double); //henüz ne değer alacağını bilmiyorsak böyle tanımlama yapabiliriz.

int g = new int(); //henüz ne değer alacağını bilmiyorsak böyle tanımlama yapabiliriz.

int h;
h = 5;
DİNAMİK DEĞİŞKEN TANIMLAMA

y, her zaman x’in yarısı olacaktır. Eğer x’i burada tanımlamayıp dışarıdan alırsak derleyici hiçbir şekilde y’nin değerini derleme zamanında bilmiyor olacak.
int x = 10;
int y = x / 2;

//hipotenüsün karesi her iki kenarın karelerinin toplamına eşittir.
//burada hipotenüs, tanımlama aşamasında değeri formülle dinamik olarak belirlenen bir değişkendir
double hipotenus = Math.Sqrt(Math.Pow(kenar1, 2) + Math.Pow(kenar2, 2));
Console.WriteLine("\nBir kenarı " + kenar1 + " diğer kenarı " + kenar2 +" olan bir üçgenin hipotenüsü");
Console.WriteLine("Pisagor teoremine göre " + hipotenus + " olacaktır");

BASİT MATEMATİK OPERATÖRLERİ

Matematiksel operatörlerin işlem önceliği aynı matematikteki gibi uygulanmıştır.
int x = 3;                    int a = x + y * z; //38
int y = 5;                    int b = (x + y) * z; //56
int z = 7;                    int d = z - x - y; //-1
double dd = y / x; //1            double e = (double)y / x; //1,666666667
double f = y / (double)x; //1,666666667
MOD (%) KALAN HESAPLAMA

Matematiksel işlemlerde bölmeden kalanı bulmakta kullanılır.
int a = 100 % 90;   //10            int c = 8 % 2;  //0
int b = 11 % 10;    //1            int d = 7 % 2;  //1
int bolunmeyen = 20 % 35;   //20        int negatif = -1 / 100;     //-1
++, --, += VE -= OPERATÖRLERİ

++ ve – işaretlerinin işlevleri önde yada sonda olmasına göre değişir.
int a = 5;                    int b = 5;
int r1 = ++a;   //r1=6, a=6            int r2 = b++;   //r2=5, b=6;

int c = 5;                    int d = 5;
int r3 = --c; //r3=4, c=4            int r4 = d--; //r4=5, d=4;


+= ve -= operatörleri için durum bu kadar karmaşık değildir.
int a = 5;                    a += b;     //a=15
int b = 10;                    c -= b;     //b=10, c=-10
int c = 0;        //sadece += veya -= 'in solundaki değişkenin değeri değişir.

İLİŞKİSEL KONTROLLER

İki değişken arasındaki benzerlik kontrollerini ==, >, <, >=, <=, != operatörleri ile yaparız.
int x = 3;
int y = 3;
int z = 5;

x.Equals(y);    //True            x == y;         //True
x >= y;         //True            x <= y;         //True
z <= x;         //False            x > y;          //False
y < z;          //True            !x.Equals(y);   //False
!y.Equals(z);   //True            x != y;         //False
y != z;         //True

Görüldüğü gibi == operatörü object.Equals( ) metodunun işlevini yapar. !’lı ifade negatif halidir.
MANTIK İŞLEMLERİ VE OPERATÖRLERİ
C#’ta &, |, ^, !, &&, ||, true, false operatörleri mantıksal işlemlerde kullanılır. Mantıksal işlemler genelde karar aşamasında bir çalışma zamanı değişkeninin değerini kontrol etmek için kullanılırlar. Bu kontrolün sonucuna göre programın akışı belirlenir.
  • & (AND) operatörü ifadenin sağ ve solu true ise true, herhangi biri false ise false döner. 
  • | operatörü (0R) ifadenin sağ ve solu true ise true döner. 
  • ^ (X0R) operatörü ifadenin sağı ve solu aynı ise false, farklı ise true döner.

Hiç yorum yok:

Yorum Gönder