Programlamada Operatörler

operatörlerProgramlama dillerinde sık kullanılan bir diğer araç operatörlerdir. Operatörlerin kendi başına bir işlevi yoktur. Fakat birlikte kullanıldıkları değişken veya değişkenlerle birlikte anlamlı bir sonuç döndürürler. Operatörleri işlem veya sorgulamalar için kullanırız. Bu yazımızda bütün program dillerinde olan ve en sık karşılaşılan operatörlerden bahsedeceğim.

Girişte söylediğim gibi operatörün tek başına hiçbir işlevi yoktur. Etkileşime girdikleri değişkenle (bunlara operand denir) bir arada anlamlı hale gelirler. Örneğin iki değişkeni toplamak için operatör kullanırız. Veya iki değişkeni karşılaştırmak için. Veya pozitif bir değişkeni negatife çevirmek için.

Operatörler her dilde farklılık gösterebilir ama ana operatör türlerini ve bazı örnekleri aşağıya toparlamaya çalışayım.

 

ARİTMETİK OPERATÖRLER

Bunlar genelde matematiksel işlemleri yapmak için kullanılan operatörlerdir. Dört işlem için operatörler hemen hemen bütün dillerde aynıdır. + toplamayı, – çıkarmayı, * çarpmayı ve / bölmeyi ifade eder.

Örneğin a = b + c; kodu C#’da b ve c’yi toplayıp a’ya atarken, Delphi aynı işlemi a := b + c; kodu ile yaparız. Atama operatörü değişse bile toplama operatörü değişmedi. $a = $b + $c; kodu da PHP’de aynı işlemin karşılığıdır. Dört işlem için operatörler hemen hemen bütün dillerde aynıdır.

Mod alma operatörü bir çok dilde % işaretiyken, Delphi’de mod yazılır. Örneğin a = b % c; bir çok dilde b’nin c’ye bölümünden kalanı a’ya yazarken; Pascal ve Delphi’de aynı işlemi a := b mod c; yapmaktadır.

Bazı dillerde ++, operandının değerini 1 arttırırken, — bir eksiltir.

 

ATAMA OPERATÖRLERİ

a = b + c; kodunu yukarıda örnek vermiştik. Burada + bir aritmetik operatörken; = bir atama operatörüdür. Yani sağındaki işlemin sonucunu, solundaki değişkene atar. Çoğu dilde = olan bu operatör, Pascal türevi dillerde := şeklindedir.

C ve türevi dillerde eşittirin önüne gelen aritmetik operatör aynı değişkeni sağa tekrar yazıp yanına aritmetik operatörü koyma işleminin kısaltılmışıdır. Yani a = a + b; yerine a += b; kodunu yazmanız C türevi diller için aynı şeyi ifade eder. a’yı b ile toplama işlemine sokup sonucu tekrar a’ya atamış olursunuz. Veya a /= b; de a’yı b’ye bölüp sonucu a’ya atamak anlamındadır.

 

KARŞILAŞTIRMA OPERATÖRLERİ

İki değişkeni karşılaştırmak için kullandığımız operatörlerdir. Eşittir, büyüktür, küçüktür, değildir vs anlamına gelen bu operatörler de çoğu dilde ortaktır. C türevi dillerde a == b ifadesi a’nın b’ye eşit olması durumunda true (doğru), olmaması durumunda ise false (yanlış) döner (C, C++, C#, Java, PHP vs). Bazı dillerde ise bu işlem sadece a = b ile yapılır (Pascal, Basic).

Örneğin C türevi olan PHP’de bir karşılaştırma işlemi:

if ($puan == 5) {
   $sonuc = ‘Pekiyi’;
}

Yine C türevi olan C# örneği:

if (puan == 5) {
    sonuc = ‘Pekiyi’;
}

Aynı işlemi PASCAL türevlerinde şu şekilde yaparız:

if puan = 5 then
  sonuc := ‘Pekiyi’;

BASIC türevi dillerdeyse şu şekilde yapılır:

if puan = 5 then
  sonuc = “Pekiyi”

Eşit değil operatörü de dilin kökenine göre değişiklik göstermektedir. C türevi dillerde != olan operatör, PASCAL ve BASIC türevi dillerde <> olarak kullanılır.

<, >, >=, <= gibi operatörler ise hemen bütün dillerde ortak.

 

MANTIKSAL OPERATÖRLER

Mantıksal operatörlerden kastımız ve, veya, değil gibi operatörlerdir. Ve operatörü bazı dillerde And yazısı iken C türevi dillerde genelde && simgeleridir. Aynı şekilde veya operatörü de Pascal ve Basic türevi dillerde Or yazısıyken C dillerinde || simgeleriyle ifade değilir. Değil operatörü olarak Pascal ve Basic dillerinde Not kullanılırken C dillerinde ! işareti kullanılır.

Örnek vermek gerekirse;

PHP:

if($puan == 5 && $devamsizlik <= 20) {
   $sonuc = ‘Pekiyi’;
}

C#:

if (puan == 5 && devamsizlik <= 20) {
    sonuc = ‘Pekiyi’;
}

PASCAL:

if (puan = 5) and (devamsizlik <= 20) then
  sonuc := ‘Pekiyi’;

BASIC:

if puan = 5 and devamsizlik <= 20 then
  sonuc = “Pekiyi”

 

Bu operatör türleri dışında dillerde çeşitli özel operatörler de olabilir. Örneğin bazı dillerde hata atlama için operatörler vardır. C#’da ? işareti, PHP’de ise @ işareti işlem esnasında hata oluşumunda, hatayı kırmak için kullanılan operatörlerdir. Veya burada bahsedilmeyen bit düzeyinde işlem yapmak için operatörler de mevcuttur. Veya bazı dillerde XOR ve NOR işlemleri için de operatörler vardır. Burada operatörlerin mantığı hakkında genel bilgi vermeye çalıştım.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir