Proqramlaşdırma



Yüklə 1,02 Mb.
səhifə22/34
tarix11.06.2022
ölçüsü1,02 Mb.
#61216
1   ...   18   19   20   21   22   23   24   25   ...   34
c-sharp proqramlasdirma diline girish aze

switch İfadəsi
switch kontrol ifadəsi də bir şərt ifadəsidir. Bu ifadə bir dəyişəni qiymətini, ardıcıl yerləşın sabitlərlə müqayisə edir və uyğunluq hallarında müəyyən birr əməliyyatı yerinə yetirməyə imkan verir. Əslində switch ifadəsinin yerinə yetirdiyi bütün işləri for və if kontrol ifadələrinin kombinasiyaları ilə də yerinə yetirmək olduğu halda, switch kontrol ifadəsi bir çox hallarda işimizi asanlaşdırır. Switch ifadəsinin ümumi sintaktik şəkli aşağıdakı kimidir:
switch(ifadə) {
case sabit1: əməliyyatlar break;
case sabit2: əməliyyatlar break;
case sabit3: əməliyyatlar break;

.
.
.


case sabit2: əməliyyatlar; break;
default: əməliyyatlar break;
}
Burada ifadə hesablanır və onun qiyməti blok içərisindəki sabitlərlə bir-bir müqayisə olunur. ifadənin nəticəsi int, char, bool, sbyte, byte, ulong kimi tiplərində olmalıdır. Kərs tipli nəticə ola bilməz. Əgər ifadənin qiyməti qeyd olunmuş case sabitlərinin birinə bərabər olarsa, onda həmin hissəyə aid əməliyyatlar icra olunur və switch ifadəsindən çıxılır. Proqramın axışı switch ifadəsinin son fiqurlu mötərizəsindən icra olunmağa davam edir. Əgər ifadənin qiyməti qeyd olunmuş sabitlərin heç birinə bərabər olmazsa, onda default hissəsinə aid əməliyyatlar icra olunur. switch ifadəsində default hissəsinin olması zəruri deyil, yəni default yazılmaya da bilər. Bu zaman heç bir uyğunluq olmazsa, onda switch ifadəsinə aid heç bir əməliyyat yerinə yetirilməyəcək. case qarşısındakı qiymətlər əsla bir dəyişənin qiyməti ola bilməz. Çünki switch ifadəsində case qarşısındakı qiymətlər bir-birlərindən fərqli olmalıdır. İki qiymətin eyni olmağı, uyğunluq zamanı iki case əməliyyatının yerinə yetirilməyideməkdir. Bu isə prinsipə ziddir. Dəyişənlərlərin qiymətləri də proqram daxilində dəyişə bildiklərindən, case qarşısındakı verilənlər mütləq sabitlər olmalıdır. Aşağıdakı proqramda switch ilə 1 ilə 5 arasında bir rəqəm daxil edilməsi istənilir və daxil edilən ədədin yazı variantı ekranda əks olunur:
using System; class Soft
{
public static void Main()
{
Console.WriteLine("Eded daxil edin: ");
int eded = Convert.ToInt32(Console.ReadLine()); switch (eded)
{
case 1: Console.WriteLine("Bir daxi etdiniz"); break;
case 2: Console.WriteLine("Iki daxi etdiniz"); break;
case 3: Console.WriteLine("Uc daxil etdiniz"); break;
case 4: Console.WriteLine("Dord daxil etdiniz"); break;
case 5: Console.WriteLine("Besh daxil etdiniz"); break;
default: Console.WriteLine("Daxil etdiyiniz eded [1; 5] parchasinda deyil"); break;
}
Console.ReadKey();
}
}

Daxil edilən ədəd 1, 2, 3, 4, 5 sabitlərinin hər biri ilə müqayisə olunur və bərabərlik


zamanı müvafiq əməliyyat yerinə yetirilir:

Qeyd etmək lazımdır ki, C# - da switch ifadəsində hər case əməliyyatı break ilə sonlanmalıdır. Buna ―növbəti addıma sürüşməmə‖ (no fall through) qaydası deyilir. Yəni, hət case əməliyyatının bir brake – i olmalıdır. Bununla belə switch ifadəsinin qiymətini


bir neçə sabitlə də müqayisə etmək mümkündür. Aşağıdakı kod parçası tamamilə
düzgündür:
using System; class Soft
{
public static void Main()
{
Console.WriteLine("[1; 10] arasinda eded daxil edin: "); int eded = Convert.ToInt32(Console.ReadLine()); switch (eded)
{
case 2:
case 4:
case 6:
case 8:
Console.WriteLine("Cut eded daxil etdiniz"); break;
default: Console.WriteLine("Te eded daxil etdiniz"); break;
}
Console.ReadKey();
}
}





Yüklə 1,02 Mb.

Dostları ilə paylaş:
1   ...   18   19   20   21   22   23   24   25   ...   34




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin