if (шарт) 1-оператор;
Шартты операторларды орындау барысында салыстыру операциялары қолданылады. Ал оның тармақталуы шарт бойынша анықталады. Мысал ретінде, төмендегі өрнекте шартты оператордың қалай қолданылатынын көрсетейік:
Берілген математикалық функцияда х айнымалысын π-дің мәнімен салыстыру арқылы у айнымалысының мәнін есептейтін өрнек таңдалады. Сондықтан бұл өрнекте шартты оператор келесідей түрде қолданылады:
if (x >= pi) y=Math.Sin(Math.Sqrt(x));
else y=x*Math.Exp(x+1);
Шартты оператордың қысқаша түріне мысал ретінде айнымалы мәні теріс болған жағдайда оның абсолюттік шамасын табатын өрнекті келтіруге болады:
if (x<0) y=Math.Abs(x);
Кей жағдайда шартқа байланысты шартты оператор екіден артық тармақтардан тұрады. Ондай жағдайда шартты оператордың бірінен кейін бірі келетін if – else if – else нұсқасы қолданылады. Бұны қабаттасқан шартты операторлар деп атайды. Қабаттасқан шартты оператордың жалпы жазылу формасы:
if (шарт-өрнек 1 ) 1-оператор;
else
if (шарт-өрнек 2 )
2-оператор;
…
else if (шарт-өрнек n )
n оператор;
else
n+1 оператор;
if операторын қабаттастыра отырып, күрделі өрнек мәндерін анықтайтын жағдайлар да жиі кездесіп отырады, мысалы келесі мысалды санды енгізу арқылы апта күнін анықтау программасы жазылған:
class Program
{
static void Main(string[] args)
{
int c;
Console.Write(" c = ");
c = int.Parse(Console.ReadLine());
if (c == 1) Console.WriteLine("Bugin duysenbi");
else if (c == 2) Console.WriteLine("Bugin seysenbi");
else if (c == 3) Console.WriteLine("Bugin sarsenbi");
else if (c== 4) Console.WriteLine("Bugin beysenbi");
else if (c== 5) Console.WriteLine("Bugin juma");
else if (c == 6) Console.WriteLine("Bugin senbi");
else if (c == 7) Console.WriteLine("Bugin jeksenbi");
else Console.Write("qate, 1…7 sandaryn engizu kerek");
Нәтижесі:
Бұл мысалда if – else нұсқасы 7 рет қайталанып, шарт бойынша 8 оператордың бірі орындалады. Мұндай кездерде компилятор else түйінді сөзін оның алдындағы ең соңғы if операторымен байланыстырады. Сондықтан else түйінді сөзін соған сәйкес if сөзімен бір деңгейде жазған ыңғайлы болады Ал келесі мысалда нақты x санының қабылдайтын мәніне байланысты у өрнегін есептеп шығару керек.
Бұл өрнекте х үш түрлі аралықта мән қабылдайды, соған сәйкес if – else нұсқасы үш рет жазылады. Х айнымалысының қай аралыққа кіретінін тексеріп, соған сәйкес өрнек есептеледі. Программа кодының негізгі бөлігі:
s tatic void Main()
{ double x,y;
const double p = 3.14159;
Console.Write("Enter x: ");
x=double.Parse(Console.ReadLine());
if (x>1) { y=x*x-p*Math.Sin(x); }
else if (0else { y=0; }
Console.WriteLine("x={0,5:f2} y={1,7:f3}",x,y);
}
Кейбір кездерде шартты оператор орнына оның қысқаша үш орындық операция түрінде жазылған нұсқасы қолданылады.
Достарыңызбен бөлісу: |