Turg’unov Ulug’bek Mustaqil ta’lim Mavzu: C# va boshqa tillarda (Pascal, C++) modulli dasturlash Turg’unov Ulug’bek Mustaqil ta’lim Mavzu:C# va boshqa tillarda (Pascal, C++) modulli dasturlash. 1.Kirish 1.1.“Dasturlash asoslari” fanining bosh maqsadi talabalarga qo’yilgan masalani echadigan kompyuter dasturini tuzish asoslarini o’rgatishdir. Shu maqsadda dasturlash tillari va muhitlari haqida tayanch tushunchalar beriladi va bu tillardan foydalanishga o’rgatiladi. Fan nazariy va amaliy qismlardan iborat. Nazariy qism informatika va hisoblash texnikasi, algoritmlar, C/C++ dasturlash tili, C++Builder ob’ektga yo’naltirilgan dasturlash muhitlarida ishlash bo’yicha ko’rsatmalar bo’limlaridan tashkil topgan. Dasturda kompyuterda dasturlashga kirishning nazariy asosi bo’lgan algoritmlarga alohida e’tibor qaratilgan. Bu erda algoritmlarni tavsiflash va keyinchalik kompyuterda amalga oshirish uchun zarur bo’lgan bir qator matematik tushunchalar - takrorlash, yordamchi algoritm, rekursiya, xotira, massiv, indeks, funksiya, parametr va h.k. kiritilib, turli xil sinf masalalarining algoritmlari tuziladi. Dasturlash tili - tuzilgan algoritmni kompyuter amalga oshirishi uchun vositadir. Bu o’rinda turli murakkablikdagi sintaksis va semantikaga ega bo’lgan tillardan foydalanish mumkin. “Dasturlash asoslari” fani yo’nalishning o’quv rejasidagi “Ehtimollar nazariyasi”, “Sonli usullar”, “Diskret matematika va matematik mantiq” fanlari bilan uzviy bog’liq. Fan mazmuni yo’nalishning o’quv rejasidagi “Matematik statistika”, “Ilmiy hisoblashlar”, “Mexanika”, “Oddiy differenstial tenglamalar”, “Xususiy hosilali differenstial tenglamalar” fanlarini o’zlashtirishda tayanch hisoblanadi. “Dasturlash asoslari” fani umumkasbiy fan hisoblanadi va o’quv yilining 1-2 semestrlarida o’qitiladi. Fanni o’qitish ma’ruza, amaliy mashg’ulot va mustaqil ta’lim shaklida olib boriladi. Mazkur dasturga ko’ra ushbu fan doirasida ko’plab model masalalar o’rganiladiki, bu mazkur fanni chuqur o’rgangan har bir bakalavr olgan bilim va ko’nikmalarini ishlabchiqarishda, ilmiy-tadqiqot ishlarida, shuningdek, talim tizimida samarali foydalanishi imkonini beradi. 1.2. Fanni o’qitishdan maqsad – “Matematika” yo’nalishining bakalavr bosqichi talabalariga dasturlash asoslarini etarli darajada o’qitish, shu bilimlarga tayangan holda kompyuter yordamida modellashtirishga keladigan tadbiqiy masalalarning dastur ta’minotini amalga oshirishga o’rgatish va ixtisoslik fanlarini o’zlashtirishda tayanch bilimlarga ega bo’lish. Fanning vazifalari – masala yechishning algoritmik asoslarini o’rganish, kompyuter ishlashining tamoili, dasturlash tillarini sinflash, kompyuterda berilganlar va buyruqlarni tasvirlanishi, C++ tilida dasturlash, ob’ektga yo’naltirilgan dasturlash texnologiyalari, vizual dasturlash muhitida ishlash bu fanning asosiy vazifalari hisoblanadi. “Dasturlash asoslari” fanini o’zlashtirish jarayonida amalga oshiriladigan masalalar doirasida bakalavr axborot, uni saqlash usullari, qayta ishlash va uzatish, hisoblash tizimlarining matematik va dasturiy ta’minoti, ularni fan sohalarida, ishlab chiqarish va ta’limda qo’llash xususiyatlari, kompyuterni dasturiy ta’minoti, dastur turlari va xususiyatlari, strukturali, ob’ektga yo’naltirilgan va umumlashgan dasturlash, dasturni 4 optimallashtirish va umumlashtirish, dasturlashda modulli tamoyillarini qo’llash, kompyuter texnologiyalari yutuqlarini zamonaviy hisoblash tizimlarining matematik va dasturiy ta’minotida qo’llash, dasturlashning taraqqiyotining an’analari haqida tasavvurga ega bo’lishi, yuqori darajadagi dasturlash tillarini, dasturiy ta’minotni, dasturlash texnologiyalarini, tatbiqiy va hisoblash matematikasi masalalarini yechish algoritmlarini, modulli tahlil va modulli dasturlash asoslarini, ob’ektga yo’naltirilgan va umumlashgan dasturlash usullarini, samarali dastur va dasturlar kompleksini yaratish usullarini bilishi va ulardan foydalana olishi, tadbiqiy masalalarni yechish algoritmini tuzish, matematik (kompyuter) modelini qurish va uning dasturiy ta’minotini yaratish, strukturali, ob’ektga yo’naltirilgan va umumlashgan dasturlash paradigmalarini qo’llash asosida ilovalarni yarata olish, dasturlashda, hisoblash texnikasi va dasturiy ta’minot imkoniyatlaridan samarali foydalanish, muammoga va ob’ektga yo’naltirilgan tillardan foydalanish, yaratilgan ilovalarni baholash ko’nikmalariga ega bo’lishi kerak. 2.Asosiy qism 2.1. Asosiy nazariy qism C++ tili sintaksisi va uning leksik asosi. C++ tili dasturining tuzilishi va shakli. Berilganlar turlari. C++ tilining tayanch turlari. O’zgaruvchilar va ifodalar. Amallar: inkrement, dekrement, sizeof, mantiqiy, razryadli, taqqoslash. O’qish-yozish oqimlari (cin, cout). Operatorlar. Shart operatorlari. Takrorlash operatorlari. Boshqaruvni uzatish operatorlari. Statik massivlar. Funksiyalar e’lon qilish va aniqlash. Lokal va global o’zgaruvchilar. Rekursiv funksiyalar. Standart kutubxona funksiyalari. Ko’rsatkichlar va adres oluvchi o’zgaruvchilar. Dinamik massivlar. Funksiya va massivlar. Satr va ular ustida amallar. Tuzilmalar va birlashmalar. Dinamik tuzilmalar. Fayl tushunchasi. Matn va binar fayllar. Fayl va satr oqimlari. Fayldan o’qish-yozish funksiyalari. Fayl ko’rsatkichini boshqarish funksiyalari. C++ tilida sinflar. Sinfni va ob’ektlarni tavsiflash. Sinf maydonlari va metodlari. Konstruktor va Destruktorlar. Operatorlarni qayta yuklash. Vorislik. 2.2.O’quv fani bo’yicha uslubiy ko’rsatmalar. Fan nazariy va amaliy qismlardan iborat. Nazariy qism informatika va hisoblash texnikasi, algoritmlar, C/C++ dasturlash tili, C++Builder ob’ektga yo’naltirilgan dasturlash muhitlarida ishlash bo’yicha ko’rsatmalar bo’limlaridan tashkil topgan. Dasturda kompyuterda dasturlashga kirishning nazariy asosi bo’lgan algoritmlarga alohida e’tibor qaratilgan. Bu erda algoritmlarni tavsiflash va keyinchalik kompyuterda amalga oshirish uchun zarur bo’lgan bir qator matematik tushunchalar - takrorlash, yordamchi algoritm, rekursiya, xotira, massiv, indeks, funksiya, parametr va h.k. kiritilib, turli xil sinf masalalarining algoritmlari tuziladi. Dasturlash tili tuzilgan algoritmni kompyuter amalga oshirishi uchun vositadir. Bu o’rinda turli murakkablikdagi sintaksis va semantikaga ega bo’lgan tillardan foydalanish mumkin. “Dasturlash asoslari” fani yo’nalishning o’quv rejasidagi “Ehtimollar nazariyasi”, “Sonli usullar”, “Diskret matematika va matematik mantiq” fanlari bilan uzviy bog’liq. Fan mazmuni yo’nalishning o’quv rejasidagi “Matematik statistika”, “Ilmiy hisoblashlar”, “Mexanika”, “Oddiy differenstial tenglamalar”, “Xususiy hosilali differenstial tenglamalar” fanlarini o’zlashtirishda tayanch hisoblanadi. “Dasturlash asoslari” fani umumkasbiy fan hisoblanadi va o’quv yilining 12 semestrlarida o’qitiladi. Fanni o’qitish ma’ruza, amaliy mashg’ulot va mustaqil ta’lim shaklida olib boriladi. 3.Yakuniy qism 3.1.Xulosa Fan nazariy va amaliy qismlardan iborat. Nazariy qism informatika va hisoblash texnikasi, algoritmlar, C/C++ dasturlash tili, C++Builder ob’ektga yo’naltirilgan dasturlash muhitlarida ishlash bo’yicha ko’rsatmalar bo’limlaridan tashkil topgan. Dasturda kompyuterda dasturlashga kirishning nazariy asosi bo’lgan algoritmlarga alohida e’tibor qaratilgan. Bu erda algoritmlarni tavsiflash va keyinchalik kompyuterda amalga oshirish uchun zarur bo’lgan bir qator matematik tushunchalar - takrorlash, yordamchi algoritm, rekursiya, xotira, massiv, indeks, funksiya, parametr va h.k. kiritilib, turli xil sinf masalalarining algoritmlari tuziladi. Dasturlash tili tuzilgan algoritmni kompyuter amalga oshirishi uchun vositadir. Bu o’rinda turli murakkablikdagi sintaksis va semantikaga ega bo’lgan tillardan foydalanish mumkin. 3.2.Foydalanilgan adabiyotlar 1. Bjarne Stroustrup. The C++ Programming Language (3th Edition). Addison-Wesley, 1997. 2. D.S. Malik. C++ Programming: From Problem Analysis to Program Design. Fifth Edition. Course Technology, 2011. 3. Madraximov Sh.F., Gaynazarov S.M. C++ tilida dasturlash asoslari// Toshkent, O’zMU, 2009, 196 bet. 4. Madraximov Sh.F., Ikramov A.M., Babajanov M.R. C++ tilida programmalash bo’yicha masalalar to’plami. O’quv qo’llanma // Toshkent, O’zbekiston Milliy Universiteti, “Universitet” nashriyoti, 2014. - 160 bet. http://fayllar.org