Prva stvar koju ste učili iz matematike još dok ste išli u osnovnu školu su sabiranje, oduzimanje, množenje i deljenje; prvo celih brojeva zatim i drugih. Tako se počinje i učenju programskih jezika, ali imajte u vidu da neki programerski operatori ne postoje u matematici i nemaju uvek istu matematičku simboliku kao i obratno. I pored toga što su operatori poznati svakom C i C++ programeru, C# programski jezik je razvio i neke promene i dodao neke nove kategorije operatora.
Aritmetički + - * / %
Logički & | ^ ~ && || !
Konkatenacija – spajanje stringova +
Inkrementiranje i dekrementiranje – uvećanje i smanjenje ++ --
Pomeranje bitova << >>
Poređenje == != <> <= >=
Dodeljivanje = += -= *= /= %= &= != ^= <<= >>=
Pristup članovima (za objekte i strukture) .
Indeksiranje (za nizove i indeksere) []
Promena tipa ()
Ternarni – kondicionalni ?:
Stvaranje objekta new
Informacije o tipu sizeof (samo u nebezbednom kodu), is type of as
Kontrola izuzetaka prekoračenja checked, unchecked
Indirekcija i adresa * -> & (samo unebezbednom kodu) []
Unarni +x –x !x ~x ++x –x (T)x Await &x *x
Null – coalescing x??y
Null – propagiranje (Elvis operator) ?.
Lambda =>
i drugi.
Šta je to prioritet operatora?
U C# programskom jeziku se operatori imaju svoj prioritet kako se izvršavaju. Npr. množenje će se uvek pre izvršiti nego sabiranje. Zato je neophodno i sigurnije da uvek koristite zagrade pre nego dođete u situaciju da zbog prioriteta operatora dobijete pogrešan rezultat.
ali ste možda očekivali da dobijete rezultat 54. Zato uvek koristite zagrade.
Šta su aritmetički operatori?
Aritmetički operatori su vam kao i u matematici; operatori koji koriste aritmetičke operacije. A to su:
- + sabiranje
- - oduzimanje
- · množenje
- / delenje
- % mod, modul, modulos, modulo – celobrojni ostatak
using static System.Console;
WriteLine("Enter number 1 of 2: ");
double number1 = Double.Parse(ReadLine());
WriteLine("Enter number 2 of 2: ");
double number2 = Double.Parse(ReadLine());
WriteLine($"\n{number1} + {number2} = {number1 + number2}");
WriteLine($"\n{number1} - {number2} = {number1 - number2}");
WriteLine($"\n{number1} * {number2} = {number1 * number2}");
WriteLine($"\n{number1} / {number2} = {number1 / number2}");
WriteLine($"\n{number1} % {number2}
= {number1 % number2}");
ili što je češći slučaj ovako:
Enter number 1 of 2:
25
Enter number 2 of 2:
4
25 + 4 = 29
25 - 4 = 21
25 * 4 = 100
25 / 4 = 6.25
25 % 4 = 1
Kako izgleda navedeni program možete pogledati i na video-u:
Šta je inkrementiranje i dekrementiranje?
S obzirom da se u programiranju često javlja potreba da promenjivu uvećavamo ili smanjujemo za 1, posebno u radu sa petljama, došlo je do potrebe da se naprave operatori koji će uvećavati ili smanjivati promenjivu za 1. Zato koristimo operatore za inkrementiranje (uvećavanje) i dekrementiranje (umanjivanje). Pogledajte kod narednog programa:
using static System.Console;
WriteLine("Enter an integer number: ");
int number =
Int32.Parse(ReadLine());
WriteLine($"\nYour number is: {number}");
WriteLine($"\nYour number {number} after post-increment ( x++ ): {number++}");
WriteLine($"\nYour number {number} after post-decrement ( x-- ): {number--}");
WriteLine($"\nYour number {number} after pre-increment ( ++x ): {++number}");
WriteLine($"\nYour number {number} after pre-decrement ( --x ): {--number}");
WriteLine("\nThe results are not error!");
Enter an integer number:
15
Your number is: 15
Your number 15 after post-increment ( x++ ): 15
Your number 16 after post-decrement ( x-- ): 16
Your number 15 after pre-increment ( ++x ): 16
Your number 16 after pre-decrement ( --x ): 15
The results are not error!
U prvoj liniji koda vidimo da je promenjivoj number prvo ispisao vrednost number zatim izvršio inkrementiranje. Zato vi vidite istu vašu vrednost 15; što ne znači da inkrementiranje nije izvršeno. Kod dekrementiranja se stvar ponavlja; program prvo ispisuje vrednost zatim vrši dekrementiranje. Ovakvo inkrementiranje i dekrementiranje se preciznije zove sufiksno inkremetiranje i dekrementiranje. Uglavnom se koristi kod petlji. Zato kad želite da prikažete rezultat inkrementiranja ili dekrementiranja koristite prefiksno inkrementiranje ili dekrementiranje gde se prvo izvrši inkrementirane ili dekrementiranje pa se zatim prikaže vrednost. Ova ista pravila važe i kod C i kod C++ programskog jezika. Kako navedeni program izgleda možete pogledati i na video-u:
Operatori dodeljivanja ili operatori složenog dodeljivanja su vam jednostavno operatori koji nam na neki način skraćuju dodeljivanje neke vrednosti promenjivoj. Npr. umesto da pišete:
using static System.Console;
WriteLine("Enter an integer number: ");
int number =
Int32.Parse(ReadLine());
WriteLine($"\n X = {number}");
WriteLine($"\n X = X + 18 ...
X += 18 ... {number += 18}");
WriteLine($"\n X = X - 13 ...
X -= 13 ... {number -= 13}");
WriteLine($"\n X = X * 9
... X *= 9 ... {number
*= 9}");
WriteLine($"\n X = X / 7
... X /= 7 ... {number /= 7}");
WriteLine($"\n X = X % 3
... X %= 3 ... {number %= 3}");
Enter an integer number:
10
X = 10
X = X + 18 ... X += 18 ... 28
X = X - 13 ... X -= 13 ... 15
X = X * 9 ... X *= 9 ... 135
X = X / 7 ... X /= 7 ... 19
X = X % 3 ... X %= 3 ... 1
Kako navedeni program radi možete videti i na video-u:
Operatori poređenja, poznati i kao relacioni operatori su u suštini binarni operatori koji proveravaju istinitost uslova dva operanda i vraćaju logičku vrednost tipa bool, tj. true ili false u zavisnosti da li je uslov ispunjen. Često se koriste u kodiranju, posebno u uslovnim izrazima i petljama. Operatori poređenja su:
- == … isto
- != … različito
- < … manje
- <= … manje i jednako
- >= … veće i jednako
using static System.Console;
WriteLine("Enter an integer number: ");
int number =
Int32.Parse(ReadLine());
WriteLine($"\nYour number is {number}");
WriteLine($"\nYour number is equal 15 : {number == 15}");
WriteLine($"\nYour number is greater than 15 : {number > 15}");
WriteLine($"\nYour number is greater or equal 15 : {number >= 15}");
WriteLine($"\nYour number is less than 15 : {number < 15}");
WriteLine($"\nYour number is less or equal 15 : {number <= 15}");
WriteLine($"\nYour number is inequal 15 : {number != 15}");
Enter an integer number:
45
Your number is 45
Your number is equal 15 : False
Your number is greater than 15 : True
Your number is greater or equal 15 : True
Your number is less than 15 : False
Your number is less or equal 15 : False
Your number is inequal 15 : True
Kako navedeni program radi možete videti i na video-u:
Koje se logičke operacije najčešće koriste u C# programskom jeziku?
Logičke operacije u C# programskom jeziku se uglavnom svode na tri osnovne logičke operacije.
- && - Logical AND operator – logično I
- || - Logical OR operator – logično ILI
- ! - Logical NOT operator – logična NEGACIJA
Šta je i kako se koristi kontrola izuzetaka prekoračenja?
Kontrola izuzetaka prekoračenja se retko koristi u programiranju zbog efikasne obrade grešaka. Ali ako baš imate potrebu za tim, možete uraditi nešto ovako:
Nema komentara:
Objavi komentar