- •3-LEKCIYA. TARMAQLANÍWSHÍ HÁM TAŃLAW OPERATORLARÍ. TARMAQLANÍWSHÍ OPERATORLAR HÁM OLARDÍŃ ISLEW TÁRTIBI. TERNAR OPERATORÍ.
- •Jobası:
- •Tarmaqlanıwshı esaplaw proceslerin algoritmlestiriw hám programmalastırıwda kóplegen máselelerdi sheshiwde ayırım procesler belgili shárt
- •Tarmaqlanıwshı algoritm. Tapsırma: Eki pútin sandı kirgiziń hám olardan kishisin ekranǵa shıǵarıń. Sheshim
- •If operatorı
- •Bloktan keyin ‘;’ belgisi qoyılmawı múmkin, biraq blok ishindegi hár bir ańlatpa ‘;’
- •Tómende keltirilgen programmada if operatorınan paydalanıw kórsetilgen.
- •Programma orınlanıwı procesinde pútin tiptegi b ózgeriwshi járiyalanadı hám onıń mánisi klaviaturadan oqıladı.
- •if - else operatorı.
- •awa (true)
- •Programma orınlanǵanda, birinshi náwbette teńleme koefficientleri - a, b, c ózgeriwshiler mánisleri kiritiledi,
- •Diskriminant nolden kishi bolmasa, náwbettegi shárt operatorı onı nolge teńligin tekseredi. Eger shárt
- •Ekinshi mısal sıpatında úsh pútin sannıń maksimal mánisin tabıwshı programma bólegin keltiriwimiz múmkin:
- •Shárt operatorında járiyalaw operatorların isletiw ruxsat etilmeydi, biraq ondaǵı bloklarda ózgeriwshilerdi járiyalaw múmkin
- •Másele. Berilgen tórt xanalı belgisiz sannıń basındaǵı eki cifrdıń qosındısı qalǵan cifrlar qosındısına
- •Programma belgisiz pútin san kiritiwdi usınıs etedi. Eger kiritilgen san 4 xanalı bolmasa
- •Ternar operatorı ?: shárt ámeli.
- •Programmadaǵı shárt operatorı mánis beriw operatorınıń quramına kirgen
- •Shártsiz ótiw operatorı goto operatorı
- •Mısal : N natural sanın kirgiziwdi usınıs etiwshi programma dúzilsin. Eger natural bolmaǵan
- •Programma orınlanıwı processinde birinshi náwbette n sanı kiritiledi, keyin kiritilgen sannı natural san
- •Tańlaw operatorı Switch operatorı.
- •Mısal ushın, kiriw aǵımınan “Process dawam etilsin be?” sorawına paydalanıwshı tárepinen juwap alınadı.
- •Ulıwma alǵanda, tańlaw operatorında break hám default gilt sózlerin isletiw májbúriy emes. Biraq
Tańlaw operatorı Switch operatorı.
Shárt operatorınıń jáne bir kórinisi switch tańlaw operatorı bolıp, onıń sintaksisi tómendegishe:
switch (<ańlatpa>)
{
case <turaqlı ańlatpa > : <operatorlar toparı >; break; case <turaqlı ańlatpa > : <operatorlar toparı >; break;
…
case <turaqlı ańlatpa > : <operatorlar toparı >; break; default : <operatorlar toparın+1>;
}
Bul operator tómendegishe ámel qıladı: birinshi náwbette <ańlatpa> mánisi esaplanadı, keyin bul mánis case gilt sózi menen ajıratılǵan <turaqlı ańlatpai> menen salıstırıladı. Eger olar birdey bolsa, sol qatardagi ‘:’ belgisinen baslap, break gilt sózine shekem bolǵan <operatorlar toparıi> orınlanadı hám basqarıw tarmaqlanıwshı operatordan keyin jaylasqan operatorǵa ótedi. Eger <ańlatpa> hesh bir <turaqlı ańlatpai> menen sáykes kelmese, qurılmanıń default bólegindegi <operatorlar toparın+1> orınlanadı. Sonı belgilep ótiw kerek, qurılmada default gilt sózi tek ǵana bir márte ushırawı múmkin.
Mısal ushın, kiriw aǵımınan “Process dawam etilsin be?” sorawına paydalanıwshı tárepinen juwap alınadı. Eger bolımlı juwap alınsa, ekranǵa “Process dawam etedi!” xabarı shıǵarıladı hám programma óz jumısın tarmaqlanıwshı operatordan keyingi operatorlardı orınlaw menen dawam ettiredi, keri jaǵdayda “Process juwmaqlandı!” juwabı beriledi hám programma óz jumısın juwmaqlaydı. Bunda, paydalanıwshınıń ‘y’ yamasa ‘Y’ juwapları processti dawam ettiriwdi bildiredi, basqa belgiler bolsa processti juwmaqlawdı ańlatadı.
#include <iostream.h> using namespace std; int main()
{
char Juwap = ’ ’;
cout << ”Process dawam etsin be? (‘y’,’Y’): ” cin >> Juwap;
switch(Juwap)
{
case ‘Y’: case ‘y’:
cout<<”Process dawam etedi!\n”; break;
default:
cout<<”Process juwmaqlanadı!\n”; return 0;
}
... // process return 0;
}
Ulıwma alǵanda, tańlaw operatorında break hám default gilt sózlerin isletiw májbúriy emes. Biraq bul jaǵdayda operator mazmunı buzılıwı múmkin. Máselen, default bólegi bolmaǵan jaǵdayda, eger <ańlatpa> hesh bir <turaqlı ańlatpai> menen birdey bolmasa, operator hesh qanday ámel orınlamastan basqarıw tańlaw operatorınan keyingi operatorǵa ótedi. Eger break bolmasa, <ańlatpa> qandayda bir <turaqlı ańlatpai> menen birdey bolǵan jaǵdayda, oǵan sáykes keliwshi operatorlar toparın orınlaydı hám «toqtatpastan» keyingi qatardaǵı operatorlar toparın da orınlawdı dawam etedi. Máselen, joqarıdaǵı mısalda break operatorı bolmasa hám processti dawam ettiriwdi tastıyqlawshı (‘Y’) juwap bolǵan jaǵdayda ekranǵa
Process dawam etedi! Process juwmaqlanadı!