top of page

Conditional Statements (If-Else və Switch-Case)


Bu postumda sizə Proqramlaşdırma'da şərt ifadələri barədə qısa məlumat verəcəyəm. Şərt ifadələri, yəni Conditional Statements bütün proqramlaşdırma dillərində var. Bunu bizə təmin edən if-else və ya switch-case'dir.


If-Else nümunəsi:

If-else'də bizə şərtimiz olan bir operand lazımdır. Bu bir qarşılaşdırma və ya birbaşa boolean tipində bir dəyişən ola bilər. Əsas məsələ şərtimizin boolean tipində bir dəyər qaytarmasıdır. Yəni şərtin nəticəsi ya true ola bilər ya da false. If else'in sintaksisi aşağıdakı kimidir:

if(5 == 5){
   //if şərti ödəndiyi halda bu kod bloku işə düşəcək
}else{
   //if şərti ödənməsə bu kod bloku işə düşəcək
}

Switch-Case nümunəsi:

Switch-Case də, if-else'ə çox oxşardır. Əslində switch-case'lə edə biləcəyiniz hər bir şeyi if-else'lə də edə bilərsiz. Heç bir fərqi yoxdur. Sadəcə çox uzun if-else yazmaq əvəzinə belə hallarda switch-case istifadə edilə bilər. Birdə aralarındakı əsas fərq odur ki, if-else sadəcə true/false dəyər qəbul edir. Daha doğrusu yazdığınız şərtin nəticəsi true və ya false bir dəyər qaytarır. Proqram da bu şərtin nəticəsinə uyğun olaraq ya if, ya da else blokundakı kodları icra edir. Ancaq switch'ə bir constant dəyər ötürülür və hansı case'də həmin dəyərə uyğun gələrsə həmin case blokundakı kodlar işləyir.

string langOrFramework = "C#";

switch (langOrFramework)
{
   case "ASP.NET":
      Console.WriteLine("Microsoft");
      break;
   case "F#":
      Console.WriteLine("Microsoft");
      break;
   case "C#":
      Console.WriteLine("Microsoft");
      break;
   case "Java":
      Console.WriteLine("Oracle");
      break;
   default: //(əgər heç bir case'ə girməsə)
      Console.WriteLine("Hec birine uygun gelmedi");
      break;
}

Əgər biz yuxarıda Switch-Case ilə yazdığımız kodun eynisini If-Else ilə yazmış olsaydıq, aşağıdakı kimi yazmış olardıq.

string langOrFramework = "C#";

if(langOrFramework == "ASP.NET")
{
   Console.WriteLine("Microsoft");
}
else if (langOrFramework == "F#")
{
   Console.WriteLine("Microsoft");
}
else if (langOrFramework == "C#")
{
   Console.WriteLine("Microsoft");
}
else if (langOrFramework == "Java")
{
   Console.WriteLine("Oracle");
}
else
{
   Console.WriteLine("Hec birine uygun gelmedi");
}

Birdə aralarındakı bir digər fərq də odur ki, if-else'də uyğun şərt təmin edilən if tapılana qədər bir-bir sırayla bütün şərtləri yoxlayır (hər bir if şərtinə baxır). Ancaq switch-case'də isə, birbaşa switch'ə ötürülən constant'a uyğun gələn case'ə düşür. Yuxarıdakı hər iki nümunəni debug edib bu fərqi anlaya bilərsiniz.

 

Proqramlaşdırma'ya yeni başlayırsınızsa və ya proqramlaşdırma kursları axtarırsınızsa, bizə müraciət edə bilərsiniz.

Recent Posts

See All
bottom of page