37
1-мысалда
else
тармағы жоқ. Мұндай конструкция “операторды аттап
өту”
деп аталады, өйткені шарттың орындалуына байланысты меншіктеу опе-
раторы орындалады немесе оны аттап өту ісі жүзеге асырылады.
Егер бiрнеше шартты
қатар тексеру қажет болса, олар логикалық опера-
циялар белгілерімен бiрiктіріледi. Мысалы,
2-шi мысалда
а
шарты жəне
жақша ішіндегі шарттардың бірі қатарласа орындалатын болған жағдайда
ғана өрнек толығынан ақиқат болады. Егер iшкi жақшаларды алып тастасақ,
алдымен логикалық ЖƏНЕ, сонан соң барып НЕМЕСЕ орындалады.
3-мысалдағы оператор үш айнымалының ішінен ең кіші мəнді іздеп та-
бады. Мұнда компилятор
else
бөлігін оған ең жақын
if
операторымен
байланыстыратындықтан, жүйелі жақшаның болуы міндетті емес.
4-мысал
if
операторында шартты өрнектер ретiнде көбінесе қатынас опе-
рациялары қолданылатынына қарамастан, бұлай істеу міндетті емес екендігін
білдіреді.
5-мысалдағы операторларға ұқсас конструкцияларды шартты операция
түрiнде жазған ыңғайлы жəне көрнекiрек болады, мұндағы мысал үшін:
max = (b > a) ? b : a;
Мысалы, 1.6-шы суретте, көрсетілген нысанаға жебе атылған кезде алынған
ұпайлар санын анықтау керек.
#include
int main(){
fl oat x, у; int kol;
cout << "Ату координаталарын енгізіңіз\n";
cin >> x >> у;
if (x*x + y*y < 1) kol = 2;
else if (x*x + y*y < 4) kol = 1;
else kol = 0;
cout << "\n Ұпайлар саны: " << kol;
Достарыңызбен бөлісу: