Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2-lekciya

.pdf
Скачиваний:
3
Добавлен:
27.11.2023
Размер:
739.04 Кб
Скачать

2-Lekciya. C++ te dáslepki programmanı jazıw

Lekciya jobası:

2.1Hello, World!

2.2Obyektler, mánis hám tipler

2.3Esaplaw

2.4Qátelikler

Gilt sózler: tipler, qátelik, sintaktik qátelik, programma islewi dawamındaǵı qátelik, testlew, kompilyaciya waqtındaǵı qátelik, talap, logikalıq qáte, turler qátesi.

2.1 Hello, World!

Programmalar. Kompyuterdi qaysıdur bir ámeldi orınlawǵa májbúrlew ushın, siz (yamasa basqalar) oǵan ne qálep atırǵanıńızdı anıq, tolıq aytıwıńız kerek.

Bunnan tısqarı, biz ózimiz orınlawımız kerek bolǵan wazıypa túsindirmesin alamız, máselen, "jaqın jerdegi kinoteatrǵa qanday barıw múmkin" yamasa "tolqınlı pechte góshti qanday quwırıw múmkin". bunday túsindirmeler hám programmalar arasındaǵı parq anıqlıq dárejesinde anıqlanadı: adamlar salamat aqıl menen qóllanbanıń qáteshiligin anıqlawǵa háreket etedi, kompyuter bunday qıla almaydı. Máselen, "koridor boylap ońǵa, teksheden joqarıǵa, soń shepke" - joqarı etajdaǵı juwınıw xanasın tabıw imkániyatın beriwshi anıq qóllanba. Biraq, eger siz bunday ápiwayı qóllanbaǵa qarasańız, ol jaǵdayda olardıń grammatikalıq qáteligi hám tolıq emesligin kóriw múmkin. Máselen, siz stol átirapında otırıpsız hám juwınıw xanasına qanday ótiwdi sóradıńız. Sizge juwap beriwshi, ornıńızdan turıwıńızdı, onı aylanıp ótiwińizdi hám basqalardı aytıwı shárt emes. Jáne sizge hesh kim vilkanı stolǵa qoyıwıńız, teksheden kóterilip atırǵanda svetti jaǵıwıńız kerekligin, juwınıw xanasına kiriw ushın esikti ashıw kerekligin másláhát bermeydi.

Kerisinshe jaǵdayda buǵan kompyuterdiń aqılı jetpeydi. Oǵan barlıǵın anıq hám tolıq túsindiriw kerek. Kompyuterge qollanbanı tolıq túsindiriw ushın, ózine tán grammatikaǵa iye bolǵan anıq belgilengen til hámde biz orınlawdı qálep atırǵan iskerliklerdiń barlıq kórinisleri ushın jaqsı anıqlıqtaǵı sózlik kerek boladı. Bunday til programmalastırıw tili hám kóp qamtıwlı máselelerdi sheshiw ushın islep shıǵılǵan - C++ programmalastırıw tili dep ataladı.

Kompyuterler, programmalar hám programmalastırıw boyınsha filosofiyalıq qaraslar 1-lekciyada keńirek jarıtıp berilgen. Bul jerde biz júdá ápiwayı programmadan baslanatuǵın kodtı hámde onıń orınlanıwı ushın kerek bolatuǵın bir qansha usıllar hám qurılmalardı kórip shıǵamız.

Birinshi klassikalıq programma. Birinshi klassikalıq programmalardıń variantların keltiremiz. Ol ekranǵa Hello, World! xabarın shıǵaradı.

//bul programma ekranǵa "Hello, World! xabarın shıǵaradı"

#include <iostream>

using namespace std;

int main() //C++ te programmalar main funkciyasınan baslanadı

{

cout << "Hello, World!\n"; //"Hello, World!"tı shıǵarıw

return 0;

}

Kompyuter orınlawı lazım bolǵan bul buyrıqlar toplamı, aspazlıq recepti yamasa jańa oyınshıqtı jıynaw boyınsha qollanbanı esletedi. Eń basınan baslap, programmanıń hár bir qatarın kórip shıǵamız:

cout<<"Hello, World!\n"; // "Hello, World!" shıǵarıw

Tap mine usı xabardı ekranǵa shıǵaradı. Ol jańa qatarǵa ótiwshi belgi menen Hello, World! belgilerin shıǵaradı; bolmasa, Hello, World! belgisin shıǵarǵannan soń kursor jańa qatardıń basına jaylaspaydı. Kursor - bul keyingi belgi qayjerde shıǵıwın kórsetip turıwshı úlken bolmaǵan janıp óship turıwshı belgi yamasa qatar.

C++ tilinde qatarlı literallar qostırnaq (") penen belgilenedi; yaǵnıy "Hello,World!\n" — bul belgiler qatarı. \n belgi - jańa qatarǵa ótiwdi bildiriwshi arnawlı belgi. cout - standart shıǵarıw aǵımına tiyisli. "cout aǵımında shıǵıwshılar" << shıǵarıw operatorı járdeminde ekranda sáwlelenedi. cout “see-out” kibi oqıladı, biraq “character outstream” ("belgilerdi shıǵarıw aǵımı") qısqartpası esaplanadı. Programmalastırıwda qısqartpalar jeterli dárejede keń tarqalǵan. Álbette, qısqartpalar birinshi márte eslep qalıw ushın qolaysız kóriniwi múmkin, biraq úyrenip qalǵannan keyin olardan waz keshe almaysız, yaǵnıy olar qısqa hám basqarıp bolatuǵın programmalardı jaratıwǵa imkán beredi.

Qatar aqırı

//"Hello, World!" shıǵarıw

túsindirme esaplanadı. // (yaǵnıy, eki iymek sızıqtan keyin), // - belgiden keyin jazılǵan barlıǵı túsindirme esaplanadı. Ol kompilyator tárepinen biykarlanadı hám programmanı oqıwshı programmistler ushın arnalǵan. Bul jaǵdayda biz qatardıń birinshi bólimi neni ańlatıwın sizge xabar etiw ushın túsindirmeden paydalandıq.

Túsindirmeler insanlar ushın programma tekstinde ańlatıwdıń ilájı bolmaǵan paydalı maǵlıwmatlardı qamtıp aladı hám programma manzilin súwretleydi. Ulıwma alǵanda, túsindirme ózińiz ushın da paydalı bolıwı múmkin, yaǵnıy jaratqan programmańızǵa hápte yamasa jıllar ótip múráját etkenińizde ne ushın jaratılǵanın tez túsinip alıwǵa járdem beredi. Ózińizdiń programmalarıńızdı jaqsı hújjetlestiriwge háreket qılıń.

Programma eki auditoriya ushın jazıladı. Álbette, biz birinshiden olardı orınlawshı kompyuterler ushın programma jazamız. Biraq biz kodtı oqıw hám modifikaciyalawǵa uzaq jıllar sarplaymız. Solay etip, programma ushın ekinshi

auditoriya bul basqa programmistler esaplanadı. Sonıń ushın programmanıń jaratılıwın insanlar ortasındaǵı baylanıs forması dep sanaw múmkin. Álbette, insanlardı óz programmalarınıń birinshi oqıwshıları dep esaplaw maqsetke muwapıq: eger olar óz jazǵanların qıyınshılıq penen túsinse, ol jaǵdayda programma qashanlardur tuwrı bolıwı gúmán. Sol sebepli, kod oqıw ushın móljellengenligin esten shıǵarmaw kerek - programma ańsat oqılıwı ushın barlıq imkániyatlardı iske salıw kerek. Qálegen jaǵdayda túsindirmeler tek insanlar ushın kerek, kompyuter olardı biykarlaydı.

Programmanıń birinshi qatarı - bul oqıwshılarǵa programma ne islewi kerekligi haqqında xabar beretuǵın ádettegi túsindirme.

// bul programma ekranǵa "Hello, World!" xabarın shıǵaradı.

Bul túsindirmelerdıń paydalı tárepi sonda, bunda programma kodı boyınsha programma ne islep atırǵanın túsiniw múmkin, biraq biz tap ne qálep atırǵanımızdı anıqlaw múmkin emes. Bunnan tısqarı, kodtıń ózinen tısqarı, biz túsindirmelerde programmanıń maqsetin qısqasha túsindiriwimiz múmkin. Kóbinese bunday túsindirmeler programmanıń birinshi qatarında jaylasqan boladı. Basqa nárseler arasında, olar biz ne qılajaq ekenligimizdi esletip turadı.

Qatar

#include <iostream>

ózi menen #include direktivasın sáwlelendiredi. Ol iostream.h faylında súwretlengenlerdiń imkániyatların "aktivlestiriw" ushın kompyuterdi májbúrleydi. Bul fayl C++ (C++ tiliniń standart kitapxanası) tiliniń barlıq ámelge asırıwlarında kózde tutılǵan imkániyatlarınan paydalanıwdı jeńillestiredi.

iostream.h fayldıń imkániyatları berilgen programma ushın sonda esaplanadı, onıń járdemi menen biz C++ tiliniń standart kiritiw-shıǵarıw qurallarınan paydalanıw imkániyatına iye bólamiz. Bul jerde biz tek ǵana cout standart shıǵarıw potoki hám << shıǵarıw operatorınan paydalanamız. #include direktivası járdeminde programmaǵa kiriwshi fayl ádette .h keńeytpesine iye boladı hám zagalovka (header) yamasa zagalovka faylı (header file) dep ataladı. Zagalovka biz programmamızda paydalanatuǵın cout kibi atamalardı anıqlawdı óz ishine aladı.

Programma orınlanıwı baslanatuǵın noqattı programma qanday anıqlaydı? Ol main atlı funkciyanı kórip shıǵadı hám onıń qollanbaların orınlawdı baslaydı. Biziń “Hello, World!” programmamızda main funkciyası tómendegishe kórinedi:

int main() // C++ te programmalastırıw main funkciyası // járdeminde ámelge asırıladı

{

cout << "Hello, World!\n"; // "Hello, World!" shıǵarıw

return 0;

}

Orınlawdıń baslanǵısh noqatın anıqlaw ushın, C++ tilindegi hár bir programma main atlı funkciyadan quralǵan bolıwı zárúr. Bul funkciya tórt bólimnen ibarat:

1.Mánis qaytarıwshı tip, bul funkciyada - int tip (yaǵnıy, pútin san), funkciya shaqırıw noqatında qanday nátiyje qaytarıwın anıqlaydı (eger ol qandayda bir mánis qaytarsa). int sózi C++ tilinde bánt etilgen esaplanadı (gilt sóz), sonıń ushın onı basqa bir nárseniń atı sıpatında paydalanıw múmkin emes.

2.Atqa, main berilgen jaǵdayda.

3.Parametrler dizimi, sheńber qawısta berilgen; biziń jaǵdayda parametrler dizimi bos.

4.Funkciya denesi, figuralı qawısta berilgen hám funkciya orınlawı kerek bolǵan iskerlikler dizimi.

Bunnan kelip shıǵadı, C++ tilindegi kishi programma tómendegishe kórinedi:

int main(){}

Bul programma hesh qanday ámel orınlamaytuǵınlǵı ushın onnan payda az. “Hello, World!” programmasınıń main funkciyasınıń denesi eki qollanbadan ibarat:

cout<<"Hello,World!\n";//"Hello,World!" shıǵıw return0;

Birinshiden, ol ekranǵa Hello, World! qatarın shıǵaradı, soń shaqırıw noqatına 0 (nol) mánis qaytaradı. Qashan main() funkciyası sistema sıpatında shaqırılsa, biz mánis qaytarmastan paydalanamız. Biraq ayrım sistemalarda (Unix/Linux) bul mánisten programmanı tabıslı orınlanıwın tekseriw ushın paydalanıw múmkin. main() funkciyasındaǵı qaytarılıwshı 0 (nol), programma tabıslı orınlanǵanın bildiredi.

2.2 Obyektler, mánis hám tipler

“Hello world” programması tek ǵana ekranǵa jazıw shıǵaradı. Ol hesh nárse oqımaydı, yaǵnıy, paydalanıwshı hesh nárse kiritpeydi. Bul júdá zerigerli. Haqıyqıy programmalar ádette biz oǵan kiritken maǵlıwmatlarǵa qarap qandaydur esap kitaplar ótkeredi.

Maǵlıwmatlardı oqıp alıw ushın bul maǵlıwmatlardı saqlawǵa orın bolıwı kerek, basqasha qılıp aytqanda, oqıp alınǵan maǵlıwmattı jazıw ushın bizge kompyuter yadınan orın kerek. Bul orındı biz Obyekt dep ataymiz. Obyekt – bul belgili bir túr (bul jerde saqlaw múmkin bolǵan maǵlıwmat túri) ge iye bolǵan yadtaǵı orın. At berilgen obyekt bolsa ózgeriwshi delinedi. Máselen, qatarlar string túrine iye bolǵan ózgeriwshilerge saqlanadı, pútin sanlar bolsa – int tipine iye bolǵan ózgeriwshilerge saqlanadı. Obyektti onıń ishine belgili bir túrdegi maǵlıwmattı saqlaw múmkin bolǵan “qutı” dep kóz aldımızǵa keltiriwimiz múmkin.

Máselen, súwrette int tipine tiyisli, atqa iye bolǵan hám 42 pútin sanın ózinde saqlaǵan obyekt súwretlengen. Qatardı túrli ózgeriwshilerdi kiritiw qurılmasınan oqıp alıp tómendegishe ekranǵa shıǵarıwımız múmkin:

// attı oqıw hám jazıw

#include <iostream>

using namespace std;

int main()

{

cout << "Iltimas, atıńızdı kiritiń (keyin 'enter' túymesin basıń):\n";

string first_name; /* first_name — bul string tipli ózgeriwshi

*/

cin >> first_name; /* first_name ózgeriwshige belgilerdi oqıp alamız */

cout << "Hello, " << first_name << "!\n";

return 0;

}

#include direktivası biziń barlıq programmalarımızda isletilgeni ushın, aljasıwlardan qashıw maqsetinde biz bunı úyreniwdi artqa qaldıramız. Sol kibi arasında biz main() yamasa basqa bir funkciya ishine jazılǵanda isleytuǵın kodlardı keltirip ótemiz.

cout << "Iltimas, atıńızdı kiritiń (keyin 'enter' túymesin basıń):\n";

Biz sizdi bul kodtı testlew ushın tóliq programmaǵa qanday qosıwdı bilesiz dep esaplaymız.

main() funkciyasınıń birinshi qatarı paydalanıwshıǵa atın kiritiwdi usınıs etiwshi xabar shıǵaradı. Keyingi qatarlarda string tipli first_name ózgeriwshi járiyalandı, ekrannan sol ózgeriwshige maǵlıwmat oqıp alındı hám ekranǵa Hello sózinen soń first_name ózgeriwshiniń mánisi shıǵarıldı. Sol qatarlardı izbe-iz kórip shıǵamız.

string first_name; /* first_name — bul string tipke iye bolǵan ózgeriwshi */

Bul qatarda kompyuter yadınan belgilerdi saqlaw ushın orın ajıratılmaqta hám oǵan first_name atı berilmekte.

Yadtan orın ajıratıw hám oǵan at beriw processi járiyalaw delinedi.

Keyingi qatarda kiritiw qurılmasınan (klaviaturadan) ózgeriwshige maǵlıwmat oqıp alınbaqta:

cin >> first_name; /* first_name ózgeriwshisine belgilerdi oqıp alamız */

cin (“si-in” kibi oqıladı, inglisshe character input sózleri qısqartpası) atı standart kitapxanada járiyalanǵan standart aǵım kiritiwine tiyisli. Keyingi >> (kiritiw) operatorınıń operandı kiritiw nátiyjesi saqlanatuǵın orındı kórsetedi. Demek, eger biz Nicholas atın kiritip jańa qatarǵa ótkenimizde (yaǵnıy enter túymesin basqanımızda) “Nicholas” qatarı first_name ózgeriwshisiniń mánisine aylanadı.

Jańa qatarǵa ótiw kompyuterdiń itibarın qaratıw ushın áhmiyetli. Jańa qatarǵa ótilmegenge deyin (enter túymesi basılmaǵanǵa deyin) kompyuter tek ǵana belgilerdi toplap baradı. Bul kútiw bizge ayrım belgilerdi óshiriw yamasa basqa belgiler menen almastırıw imkániyatın beredi.

first_name ózgeriwshisine mánisti kiritkenimizden soń onı keleshekte isletiwimiz múmkin boladı.

cout << "Hello, " << first_name << "!\n";

Bul qatar Hello, sózi hám onnan soń Nicholas atın (first_name ózgeriwshisiniń mánisi), aqırında úndew belgisi (!) hám jańa qatarǵa ótiw belgisin (‘\n’) shıǵaradı

Hello, Nicholas!

Eger biz tákirarlanıw hám kóp tekst jazıwdı jaqtırsaq joqarıdaǵı kodtı tómendegishe jazıwimiz múmkin:

cout << "Hello, "; cout << first_name; cout << "!\n";

Itibar beriń, Hello, sózin bir qostırnaqta shiǵardıq first_name ózgeriwshisin bolsa qostırnaqlarsız jazdıq. Qostırnaqlar literal qatarlar menen islew ushın zárúr, eger qatar qostırnaqsiz jazılǵan bolsa demek ol qandayda bir atqa (ózgeriwshige) múráját qilǵan bolamız.

cout << "At" << " — " << first_name;

Bul jerde “At” eki belgiden ibarat qatardı quraydı, first_name bolsa ekranǵa first_name ózgeriwshisiniń mánisin (biziń jaǵdayda Nicholas) shıǵaradı. Demek nátiyje tómendegishe kóriniske iye:

At — Nicholas

Ózgeriwshiler. Joqarıda keltirilgen mısalda kórsetilgenindey kompyuter yadında maǵlıwmat saqlaw imkániyatısız kompyuterde hesh qanday qızıqarlı jumıs islep bolmaydı. Maǵlıwmatlar saqlanatuǵın orındı obyekt dep ataymız. Obyektke múráját etiw ushın obyekt atın biliw kerek. Atalǵan obyekt ózgeriwshi delinedi hám onda qanday maǵlıwmattı saqlaw múmkinligin anıqlawshı (máselen int tipindegi obyektke pútin sanlardı saqlaw múmkin, string tipinegi obyektke ‘Hello world’ kibi qatarlardı saqlaw múmkin) anıq bir tipke iye boladı (máselen, int yamasa string). Bunnan tısqarı olar ústinde ámeller orınlaw múmkin (máselen int tipindegi obyekt ústinde * operatorı arqalı kóbeytiw ámelin orınlaw múmkin, string tipindegi obyektlerdi bolsa <= operatorı arqalı salıstırıw múmkin). Ózgeriwshilerge jazılǵan maǵlıwmatlar mánis delinedi. Ózgeriwshini anıqlaw instrukciyası járiyalaw delinedi hám ózgeriwshi járiyalanıp atırǵanda oǵan baslanǵısh mánis berip ketse boladı. Tómendegi mısaldı kórip shıǵamız:

string name = "Annemarie"; int number_of_steps = 39;

Bul ózgeriwshilerdi tómendegishe súwretlew múmkin:

Biz ózgeriwshige tuwrı kelmeytuǵın tiptegi maǵlıwmattı jaza almaymız.

string name2 = 39; // qáte: 39 — qatar emes

int number_of_steps = "Annemarie"; // qáte: "Annemarie" — // pútin san emes

Kompilyator hár bir ózgeriwshiniń tipin saqlap qaladı hám ózgeriwshini onıń tipine sáykes ráwishte isletiwińizge jol qoyadı.

C++ tilinde júdá kóplep tipler tańlawı bar. Biraq olardıń tek ǵana 5 danasınan paydalanǵan jaǵdayda paydalı programmalar dúziw múmkin.

int number_of_steps = 39;

// int — pútin sanlar ushın

double flying_time =

3.5;

//double—haqıyqıy sanlar

ushın

char decimal_point =

'.';

// char — belgiler ushın

 

string name = "Annemarie"; // string — qatarlar ushın

bool tap_on = true; // bool — logikalıq ózgeriwshiler ushın

Itibar beriń, barlıq ózgeriwshiler óziniń jazılıw usılına iye:

39 →

int: pútin san

3.5→ double: haqıyqıy san

'.' → char: birewlik tırnaqsha ishinde jalǵız belgi

"Annemarie"

string:

qostırnaq

ishinde

jazılǵan

belgiler toplamı

 

 

 

 

 

true →

bool:

yamasa ras

(true), yamasa jalǵan

(false)

mániske iye

 

 

 

 

 

 

Basqasha qılıp aytqanda, cifrlar izbe-izligi (máselen 1234, 2 yamasa 973) pútin sandı bildiredi, birewlik tirnaqsha ishindegi belgi (máselen, ‘1’, ‘@’ yamasa ‘x’) belgini bildiredi, haqıyqıy sanlar bolsa (máselen, 123.123, 0.12, .98) haqıyqıy sanlardı bildiredi, qostırnaq ishindegi belgiler izbe izligi bolsa (máselen, “123141”, “Howdy!” yamasa “Annemarie”), qatardı bildiredi. Tolıq maǵlıwmat qosımsha qılınǵan ádebiyatlarda berilgen.

Kiritiw hám tip. Kiritiw operatorı maǵlıwmatlar tipine júdá tásirli, yaǵnıy ol kiritiw ámelge asıp atırǵan ózgeriwshi tipine sáykes ráwishte maǵlıwmatlardı oqıydı. Tómendegi mısalǵa itibar beriń:

// at hám jastı kiritiw int main()

{

cout << "Iltimas atıńız hám jasıńızdı kiritiń\n"; string first_name; // string tipindegi ózgeriwshi int age; // integer tipindegi ózgeriwshi

cin >> first_name; // string tiptegi maǵlıwmattı oqıp alamız cin >> age; // integer tiptegi maǵlıwmattı oqıp alamız

cout << "Hello, " << first_name << " (age " << age << ")\n";

}

Demek siz klaviaturada Carlos 22 ni terseńiz kiritiw operatorı >> first_name ózgeriwshisine Carlostı 22 sanın bolsa age ózgeriwshisine oqıp aladı hám tómendegi nátiyjeni ekranǵa shıǵaradı:

Hello, Carlos (age 22)

Nege Carlos 22 qatarı pútinliginshe first_name ózgeriwshisine jazılmaǵanınıń sebebi qatarlardı oqıw ajıratıw belgisi (white space) yaǵnıy probel yamasa tabulyaciya belgisi ushırawı menen juwmaqlanadı. Bunday jaǵdayda ajıratıw belgisi kiritiw operatorı >> tárepinen taslap ketiledi hám sandı oqıwǵa ótiledi.

Eger siz klaviaturada 22 Carlostı terip kórseńiz kútilmegen nátiyjege gúwa bolasız. 22 sanı first_name ózgeriwshisine jazıladı, sebebi 22 de belgiler izbe izligi esaplanadı. Basqa tárepten bolsa Carlos pútin san emes hám ol oqılmastan taslap ketiledi. Nátiyjede bolsa ekranǵa 22 sanı hám dawamında “(age” literalı hám qálegen san máselen -9842 yamasa 0 shıǵadı. Nege? sebebi siz age ózgeriwshisiniń baslanǵısh mánisin kiritpedińiz, nátiyjede onda musor mánis qalıp ketti. Házir bolsa tek age ózgeriwshisine baslanǵısh mánis berip qoyamız.

// at hám jastı kiritiw (2- usıl) int main()

{

cout << "Iltimas atıńız hám jasıńızdı kiritiń\n";

string first_name = "???"; /* string tipindegi ózgeriwshi "???" at kiritilmegenligin bildiredi") */

int age = –1; /* int tipindegi ózgeriwshi (–1 “jas anıqlanbaǵanlıǵın bildiredi”) */

cin >> first_name >> age; /* qatar onnan soń pútin sandı óqıymız */

cout << "Hello, " << first_name << " (age " << age << ")\n";

}

Endi 22 Carlos qatarın kiritiw tómendegi nátiyjege alıp keledi:

Hello, 22 (age –1)

Itibar beriń, biz kiritiw operatorı arqalı bir neshe mánislerdi kiritiwimiz múmkin, bir shıǵarıw operatorı menen olardı shıǵarıwımız múmkin. Bunnan tısqarı shıǵarıw operatorı << da kiritiw operatorı >> kibi tiplerga seziwsheń, sonıń ushın string tipindegi ózgeriwshi hám bir qatar qatarlar menen birgelikte pútin san (int) tipindegi ózgeriwshini shıǵarıwımız múmkin.

string tipindegi obyektti kiritiw operatorı >> arqalı kiritiw ajıratıw belgisi ushıraǵanda toqtatıladı basqasha qılıp aytqanda kiritiw operatorı óz aldına sózlerdi oqıydı. Ayrım waqıtlartlar bizge bir neshe sózlerdi oqıw kerek boladı. Bunıń kóplep usılı bar, máselen eki sózden ibarat attı oqıp alıw múmkin:

int main()

{

cout << "Iltimas at, familiyańızdı kiritiń\n"; string first;

string second;

cin >> first >> second; // eki qatar oqıp alamız cout << "Hello, " << first << ' ' << second << '\n';

}

Bul jerde biz kiritiw opratorın >> eki márte islettik. Eger bul sózlerdi ekranǵa shıǵarıw kerek bolsa olar arasınan probel qoyıw zárúr.

Ámeller hám operatorlar. Ózgeriwshilerdiń tipleri olarda qanday maǵlıwmat saqlanıwınan tısqarı olar menen qanday ámeller orınlaw múmkinligin de kórsetedi:

int count;

cin >> count; /* kiritiw operatorı >> pútin sandı count obyektine jazadı */

string name;

cin >> name; /* kiritiw operatorı kiritilgen qatardı name

ózgeriwshisine jazadı */

int c2 = count + 2; // + operatorı eki sanın qosadı

string s2 = name + " Jr. "; /* + operator belgiler menen toltırad ı */

int c3 = count – 2; // eki sanın aladı

string s3 = name – "Jr. ";

/* qáte: -

operatorı

qatarlar

ushın anıqlanbaǵan */

 

 

 

Qáte ornında biz kompilyatordıń

programmanı

kompilyaciya

etpesligin

názerde tutıp atırmız. Kompilyator hár bir ózgeriwshige qanday ámellerdi orınlaw múmkinligin biledi hám qáte qılıwına jol qoymaydı. Biraq kompilyator qaysı ózgeriwshilerge qanday ámellerdi orınlaw múmkinligi haqqında bilmeydi hám tómendegidey mánissiz qátelerge jol qoyıp beredi:

int age = –100;

Kórinip turıptı, adam teris jasqa iye bola almaydı, biraq hesh kim bul haqqında kompilyatorǵa aytpadı, sonıń ushın bunday jaǵdaylarda kompilyator hesh qanday qátelik haqqında xabar bermeydi. Tómende eń kóp tarqalǵan tipler ushın ámeller dizimi keltirilgen:

 

bool

Char

int

double

string

Teńlew (mánis beriw)

=

=

=

=

=

 

Qosıw

 

 

+

+

 

 

Jalǵaw

 

 

 

 

+

 

Ayırıw

 

 

 

 

Kóbeytiw

 

 

*

*

 

 

Bóliw

 

 

/

/

 

 

Qaldıq

 

 

%

 

 

 

1 ge inkrement (asırıw)

 

 

+ +

+ +

 

 

1 ge dikrement (kemeytiriw)

 

– –

– –

 

 

n ge inkrement

 

 

+=n

+=n

 

 

Aqırına qosıw

 

 

 

 

+=

 

n ge dikrement

 

 

-=n

-=n

 

 

Kóbeytip teńlew

 

 

*=

*=

 

 

Bólip teńlew

 

 

/=

/=

 

 

Qaldıq alıw hám teńlew

 

 

%=

 

 

 

s fayldan x ke oqıw

s>>x

s>>x

s>>x

s>>x

s>>x

x ti s faylǵa jazıw

s<<x

s<<x

s<<x

s<<x

s<<x

Teń

==

==

==

==

==

 

Teń emes

!=

!=

!=

!=

!=

 

Úlken

>

>

>

>

>

 

Úlken yamasa teń

>=

>=

>=

>=

>=

 

Kishi

<

<

<

<

<

 

Kishi yamasa teń

<=

<=

<=

<=

<=

 

 

 

 

Bos ketekler ámel bul

tiplerge tuwrıdan tuwrı qollanıp bolmaytuǵınlıǵın

kórsetedi. Waqtı menen barlıq operatorlardı túsindirip ótemiz. Haqıyqıy sanlarǵa tiyisli tómendegi úlgini kórip shıǵamız:

// operatorlar jumısın kórsetiwshi ápiwayı programma int main()

{

Соседние файлы в предмете Программирование на C++