O’ZBEKISTON RESPUBLIKASI RAQAMLI TEXNOLOGIYALAR VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI QARSHI FILIALI
KAMPYUTER INJINERING FAHULTETI
DI-11-23 GURUH TALABASI
DASTURLASH 2
fanidan
1-MUSTAQIL ISH.
Bajardi: Sherzadov Bahrom.
Qabul qildi: NOSIROV B. N.
QARSHI
Reja:
Turlarning dinamik tarifi. Turlarni almashtirish operatorlari.
Yangi nomlar fazosi uchun joy yaratish.
Buferlashtirilgan kirish va chiqish.
STL kutubxonalar. Konteyner sinflar.
Chiziqli konteynerlar (array, vector, deque, list, forward list).
Turlarning dinamik tarifi. Turlarni almashtirish operatorlari.
Dasturlash tili programmalar tuzishning asosiy vositasidir. Bu tillar konkret mashina komandalari sistemasiga bogʻliq boʻlmasligi va iboralar strukturasi jihatidan umumiy xususiyatga ega boʻlishi bilan boshqa tabiiy tillarga oʻxshab ketadi. Iboralar ikki turga — operatorlar hamda tavsiflarga boʻlinadi, ularning bir-biri bilan bogʻliqligi qavslar bilan, alohidaligi nuqtali vergul bilan ajratiladi. Operator tilning amal birligi boʻlib, oʻz navbatida, oʻzgaruvchan kattalikka qiymat beruvchi operatorlar, shartga muvofiq tegishli hisoblash tarmogʻini tanlovchi (shartli) operator va takroriy hisobni amalga oshiruvchi sikl operatorlariga boʻlinadi. Tavsifda oʻzgaruvchan kattalik va boshqa belgilar xususiyatlari yoziladi. Biror xususiy masalani yechish uchun tuzilgan programmani simvolik ravishda funksional belgilash mumkin. Bunday belgilash va tavsif birgalikda kichik programma deb yuritiladi. Yangi programmalar tuzishda kichik programmalardan tayyor holda foydalanish mumkin.
Juda koʻp dasturlash tillari (algol-60, q. Algol), muhandislik va ilmiy masalalarni yechish uchun fortran, iqtisodiy hisoblashlar uchun kobol, matematik modellar uchun si mula, tako-millashgan algol-68, PL/I yaratildi. Ularning har biri uchun shu tillarda ifodalangan masalalarga qarab mashina programmasini avtomatik tarzda qaytatuzuvchi translyatorlar mavjud. Taxminiy mashina tili ikkilik sistemadan koʻra yanada qulayroq simvollarda ifodalangan mashina komandalari terminlaridagi programmalar boʻlib, bunda koʻpincha, yuqori darajadagi til sifatida blok sxemalardan foydalaniladi.
Dasturlashning programma tuzilgandan keyingi yana bir asosiy bosqichi „tekshirish“ (otladka) boʻlib, bunda yoʻl qoʻyilgan xatolar topiladi va tuzatiladi. Programmalar kodlanadi va mashinaga maxsus qurilma yordamida kiritiladi. Amaliyotda Dasturlashning yangi va tezkor usullari bor (2004); 2) matematik dasturlash — amaliy matematikaning bir boʻlimi; umumiy maʼnoda — biron-bir funksiya fo (x) ning ekstremumini (qarang Ekstremum) topish masalasi tushuniladi.
Turlarni dinamik tarifi C++ dasturlash tilida alohida tur klasslari orqali yaratiladi. Klasslar orqali tur obyektlari yasab, ularning xususiyatlariga murojat qilish, ularning qiymatlarini o'zgartirish va obyektlar orasida aloqa yaratish mumkin.
Bu kodda "Student" klassining obyekti uchun xotira ajratish uchun new operatori foydalaniladi. Xususiyatlar esa -> operatori arqali yoziladi. Klass obyektining xususiyatlari dastur bajarilishida aniqlanmaydi, chunki klass o'zining xususiyatlarini aniqlash unvoniga ega.
Turlarni almashtirish operatorlari
Turlarni dinamik tarifi C++ dasturlash tilida alohida tur klasslari orqali yaratiladi. Klasslar orqali tur obyektlari yasab, ularning xususiyatlariga murojat qilish, ularning qiymatlarini o'zgartirish va obyektlar orasida aloqa yaratish mumkin.
Quyidagi misol C++ dasturlash tili yordamida tur klassi yaratishni ko'rsatadi:
- = - almashtirish operatori
- += - qo'shishga almashtirish operatori
- -= - ayirishga almashtirish operatori
- *= - ko'paytirishga almashtirish operatori
- /= - bo'lishga almashtirish operatori
- %= - qoldiqni hisoblashga almashtirish operatori
- <<= - bitni chapga surishga almashtirish operatori
- >>= - bitni o'ngga surishga almashtirish operatori
- &= - bit ko'paytirish va yig'ishga almashtirish operatori
- ^= - bit xor operatoriga almashtirish operatori
- |= - bit yig'ish va ko'paytirishga almashtirish operatori
Quyidagi misol kod almashtirish operatorlarini ko'rsatadi:
int main () {
int a = 10, b = 4;
a += b;
cout << "a += b: " << a << endl;
a -= b;
cout << "a -= b: " << a << endl;
a *= b;
cout << "a *= b: " << a << endl;
a /= b;
cout << "a /= b: " << a << endl;
a %= b;
cout << "a %= b: " << a << endl;
return 0;
}
Bu misolda, a va b nomli o'zgaruvchilar yaratilgan. a va bning qiymatlari belgilangan, keyinchalik aga bni qo'shish uchun += operatori ishlatilgan. So'ng adan bni ayirish uchun -= operatori foydalanilgan. *= operatori ko'paytirish amalini bajaradi, /= operatori bo'lish amalini bajaradi va %= operatori esa qoldiqni hisoblash uchun ishlatiladi.
Shuningdek, boshqa almashtirish operatorlari ham shu usul bilan foydalaniladi.
|