BÖLMƏ 3. OPERATORLAR Operator nədir?
Operatorlar, verilənlər üzərində işləmək, onların qiymətlərini dəyişmək, onlar üzərində riyazi əməliyyatlar aparmaq üçün istifadə olunan qaydalardır. Məsələn iki dəyişənin qiymətinin toplanması, bir dəyişənin qiymətini əksinə dəyişmə, bir dəyişənlə digər dəyişənin qiymətini müqayisə etmək və s. kimi əməliyyatar operatorlar vasitəsilə həyata keçirilir. Operatorun üzərində işlədiyi dəyişənə operand deyilir. Bütün proqramaşdırma dillərində operatorlar mövcuddur. C# proqramlaşdırma dilində operatorlar öz funksionallığına görə aşağıdakı kimi qruplaşdırıla bilər:
Vahid operatorlar (unary operators)
Cəbri operatorlar (arithmetic operators)
Müqayisə operatorları (relational operators)
Məntiqi operatorlar (logical operators)
Mənimsətmə operatorları (assignment operators)
Bit əsaslı operatorlar (bitwise operators)
Digər operatorlar
Vahid operatorlar
C# - da vahid operatorlar, tək bir operand tələb edən, yəni tək bir operand üzərində işləyən operatorlardır və onlar aşağıdakılardır:
Operator Əməliyyat
++ Bir dəyişənin qiymətinin müsbət versiyasını verir
Bir dəyişənin qiymətinin mənfi versiyasını verir
! Bu operator əslində məntiqi operatordur və bir bool dəyişənin qiymətini əksinə çevirir. Yəni, true isə false, false isə true olur.
++ Bir dəyişənin qiymətini bir vahid artırır
-- Bir dəyişənin qiymətini bir vahid azaldır
Yuxarıda + operatorunun açıqlaması sizi çaşdırmasın. ―Bir dəyişəninqiymətinin müsbət versiyasını verir‖ demək o demək deyil ki, mənfi bir dəyişənin qarşısına + yazanda əldə olunan nəticə onun müsbət variantı olur.
Aşağıdakı proqrama baxaq:
using System; class Soft
{
public static void Main()
{
int a = 5; int b = -a;
Console.WriteLine("a = " + a); Console.WriteLine("-a = b =" + b); b = -b;
Console.WriteLine("-b = " + b); bool c = true; Console.WriteLine("c = " + c); c = !c;
Console.WriteLine("!c = " + c); Console.ReadKey();
}
}
Aydındır ki, bu proqramın nəticəsi aşaıdakı kimi olur:
İndi isə çox maraqlı operatorlar olan ++ və -- operatorlarına baxaq. Qeyd olunduğu kimi Bu operatorlar uyğun olaraq bir dəyişənin qiymətini bir vahid artırır və bir vahid azaldır.
Məsələn,
x =x +1;
ifadəsini aşağıdakı kimi yaza bilərik: x++;
Eyniylə də x = x – 1; sətrini
x--;
kimi də yaza bilərik. Bu operatorların hər biri operandın həm əvvəlində, həm də sonunda
yazıla bilər. Məsələn x = x +1;
ifadəsini ++x;
kimi də yaza bilərik. Artırma və azaltma operatorlarının operandın əvvəlində və ya sonunda gəlməsi arasında heç bir fərq yoxdur. Yəni ++x və x++ ifadələrinin ər biri x dəyişəninin qiymətini bir vahid artırır. Amma daha mürəkkəb ifadələrdə bu operatorların yerləşmə mövqeyi fərqli nəticələrə səsəs ola bilər. Məsələn başqa bir dəyişənə x dəyişənin qiymətinin bir vahid çox vəziyyətini mənimsətmək istəyiriksə, onda ++ operatorunun əvvəldə və ya axırda yazılmağının fərqi var. Belə ki, əgər bu operatorlar mənimsətmə operatorunun yanında gələrsə, onda ++ (--) operatorlarına aid operandın qiyməti bir vahid artır (azalır) sonra yeni qiymət, müvafiq dəyişənə mənimsədilir. Əgər bu operatorlar mənimsətmə operatorunun yanında gəlməzsə, yəni operandın sağında yerləşərsə, onda ++ və ya -- operatorlarına aid operandın qiyməti müvafiq dyişənə mənimsədilir, sonra bir vahid artırılır və yaz azaldılır. Bu faktı aşağıdakı proqram göstərir:
using System; class Soft
{
public static void Main()
{
int a1 = 5;
int b1 = a1++; //Operator sağda yerləşir Console.WriteLine("a1 = " + a1); Console.WriteLine("b1 = " + b1); Console.WriteLine();
int a2 = 5;
int b2 = ++a2; //operator solda yerləşir Console.WriteLine("a2 = " + a2); Console.WriteLine("b2 = " + b2); Console.ReadKey();
}
}
Bu proqramın nəticəsi aşağıdakı kimi olur:
Dostları ilə paylaş: |