Mirzo Ulug’bek nomidagi
O’zbekiston Milliy universiteti Jizzax filiali
“Amaliy matematika” fakulteti
“Amaliy matematika va informatika”kafedrasi
“Dasturlash asoslari”fanidan
KURS ISHI
Mavzu: C++tilida murakkab tuzilmalarning dasturiy ta’minotini yaratish
Bajardi: 104-19-guruh talabasi Boliqulova Nigina
Ilmiy rahbar: Dusanov Xurshid
Jizzax - 2021
MUNDARIJA.
KIRISH……………………………………………………………….
|
3
|
Strukturalar…………………………………………………
|
|
Struktura funksiya argument sifatida………………………
|
|
Struktura massivi…………………………………………….
|
|
Strukturalarga ko’rsatgich……………………………………
|
|
Dinamik strukturalar………………………………………….
|
|
DASTUR TASNIFI………………………………………………….
|
|
XULOSA……………………………………………………………..
|
|
FOYDALANILGAN ADABIYODLAR RO’YXATI…………….
|
|
ILOVA………………………………………………………………..
|
|
2
KIRISH
Hozirgi kunda respublikamizdagi texnika oliy o’quv yurtlarida “Informatika va axborot texnologiyalari” yo’nalishi va mutaxassisliklarga turli xil dasturlash tillarini o’rgatish mo’ljallangan . Vaqt o’tishi bilan kompyuterlar tobora kengroq qo’llana boshladi hamda yuqoriroq darajadagi protsedura dasturlash tillari paydo bo’ldi.
Respublikamizda “Axborot texnologiyalari va raqamli iqtisodiyot “ni rivojlantirish uchun keng ko’lamli ishlar olib borilmoqda. Misol uchun: “Bir million o’zbek dasturchi” loyihasini aytishimiz mumkin. Faqat respublikamizda emas , balki butun dunyo bo’yicha IT(axborot texnologiyalari) va suniy intellektga juda katta e’tibor qaratilgan. Dunyoning rivojlangan davlatlari bu yo’nalishda o’z iqtisodiyotini rivojlantirmoqda.
Bizga ma’lumki, dasturlash tillarining yuzdan ortiq ko’rinishlari mavjud, lekin qo’llanilish ko’lamiga qarab C/C++ va C# dasturlash tillari yuqori dasturlash sinfiga mansubdir. Mutaxassislarning fikriga ko’ra C++ dasturlash tili Assembler dasturlash tiliga eng yaqin bo’lib , tezlik jihatdan 10% ortda qolar ekan. Keyingi yillarda amaliy dasturchilarga juda ko’p integratsion dastur tuzish muhitlari taklif etilmoqda. Bu muhitlar u yoki bu imkoniyatlari bilan bir - biridan farq qiladi. Aksariyat dasturlash muhitlarining fundamental asosi C/C++ tiliga borib taqaladi.
Kurs ishining maqsadi C++ tuzilmaridan foydalanib, amaliy masalalarni yechishni , dasturlash prinsiplarini o’rganish ko’nikmalarini hosil qilish hisoblanadi. Ushbu kurs ishi hozirgi kunda kompyuterda berilgan masalalarni dasturlash tillari orqali yechish va dasturlashda strukturalar, strukturali massivlar va ko’rsatgichli strukturalar bilan ishlash hamda boshqa ob’ektlar bilan ishlash ko’nikmalarini o’rganishga bag’ishlanadi.
Bu kurs ishi beshta bo’lim, dastur tasnifi , xulosa foydalanilgan adabiyotlar ro’yxati va ilovadan iborat.
1.Strukturalar.
Ma’lumki biror predmet sohasidagi masalani yechishda undagi ob’ektlar bir nechta, har xil turdagi parametrlar bilan aniqlanishi mumkin. Masalan, tekislikdagi nuqta haqiqiy turdagi x – absisssa va y ordinata juftligi -(x,y) ko’rinishida beriladi. Talaba haqidagi ma’lumotlar: satr turidagi talaba familiyasi ism va sharifi ,mutaxassislik yo’nalish, talaba yashash adresi, butun turdagi tug’lilgan yili, o’quv bosqichi, haqiqiy turdagi reyting bali , mantiqiy turdagi talaba jinsi haqidagi ma’lumot va bosh qalardan shakllanadi.
Programmada holat yoki tushunchani tavsiflovchi har bir berilganlar uchun alohida o’zgaruvchi aniqlab masalani yechish mumkin. Lekin bu holda ob’ekt haqidagi ma’lumotlar <> bo’ladi , ularni qayta ishlash murakkablashadi, ob’ekt haqidagi berilganlarni yaxlit holda ko’rish qiyinlashadi.
C++ tilida bir yoki har xil turdagi berilganlarni jamlanmasi struktura deb nomlanadi. Struktura foydalanuvchi tomonidan aniqlangan berilganlarning yangi turi hisoblanadi.
Struktura quyidagicha aniqlanadi:
struct;
{
1> 1>;
2> 2>;
…………………
n> n>;
};
Bu yerda - struktura ko’rinishida yaratilayotgan yangi turning nomi , “ 1> 1” - strukturaning i- maydonining (nom1) e’loni.
Boshqacha aytganda, struktura e’lon qilingan o’zgaruvchilardan (maydonlardan) tashkil topadi. Unga har xil turdagi berilganlarni o’z ichiga oluvchi qobiq deb qarash mumkin. Qobiqdagi berilganlarni yaxlit holda ko’chirish , tashqi qurilmalar ( binar fayllarga ) yozish, o’qish mumkin bo’ladi
Talaba haqida berilganlarni o’z ichiga oluvchi struktura turning e’lon qilinishini ko’raylik.
struct Talaba
{
char FISH [30];
unsigned int Tugilgan yili ;
unsigned int Kurs ;
char Yunalish [50 ];
bool status ;
};
Programmada strukturalardan foydalanish, shu turdagi o’zgaruvchilar e’lon qilish va ularni qayta ishlash orqali amalga oshiriladi:
Talaba talaba;
Struktura turini e’lonida turning nomi bo’lmasligi mumkin, lekin bu holda struktura aniqlanishidan keyin albatta o’zgaruvchilar nomlari yozilishi kerak:
struct
{
unsigned int x,y;
unsigned char Rang ;
}
Nuqta1, Nuqta2 ;
Keltirilgan misolda struktura Nuqta1, Nuqta2 o’zgaruvchilari e’lon qilingan.
Struktura turidagi o’zgaruvchilar bilan ishlash , uning maydonlari bilan ishlashni anglatadi . Struktura maydoniga murojat qilish “.” ( nuqta ) orqali amalga oshiriladi. Bunda struktura turidagi o’zgaruvchi nomi , undan keyin nuqta qo‘yiladi va maydon o‘zgaruvchisining nomi yoziladi. Masalan, talaba haqidagi struktura maydonlariga murojaat quyidagicha bo‘ladi:
talaba.Kurs=2;
talaba.Tug_yil=1988;
strcpy(talaba.FISh,”Abdullaev A.A.”);
strcpy(talaba.Yunalish,
”Informatika va Axborot texnologiyalari”);
strcpy(talaba.Jinsi,”Erk”);
strcpy(talaba.Manzil,
”Toshkent,Yunusobod 6-3-8, tel: 224-45-78”);
talaba.Reyting=123.52;
Keltirilgan misolda talaba strukturasining son turidagi maydonlariga oddiy ko‘rinishda qiymatlar berilgan, satr turidagi maydonlar uchun strcpy funksiyasi orqali qiymat berish amalga oshirilgan.
Struktura turidagi ob‘ektning xotiradan qancha joy egallaganligini sizeof funksiyasi (operatori) orqali aniqlash mumkin:
Do'stlaringiz bilan baham: |