3-mavzuga doir topshiriqlar



Yüklə 23,46 Kb.
tarix02.01.2022
ölçüsü23,46 Kb.
#38638
3-mavzuga Javoblar


3-mavzuga doir topshiriqlar:

1. Algoritmning ta’rifini keltiring?

2. Algoritmning turlarini sanab bering?

3. Dasturlash tillarini tavsiflang?

4. Paskal tili haqida ma’lumot bering?

8. Paskal tili alfavitini keltiring?



Javoblar.

1. Algoritmning asosiy xossalari.Algoritmning 5-ta asosiy xossasi bor:
Diskretlilik (Cheklilik). Bu xossaning mazmuni algoritmlarni doimo chekli qadamlardan iborat qilib bo‘laklash imkoniyati mavjudligida. Ya’ni uni chekli sondagi oddiy ko‘rsatmalar ketma-ketligi shaklida ifodalash mumkin. Agar kuzatilayotgan jarayonni chekli qadamlardan iborat qilib qo‘llay olmasak, uni algoritm deb bo‘lmaydi. Tushunarlilik. Biz kundalik hayotimizda berilgan algoritmlar bilan ishlayotgan elektron soatlar, mashinalar, dastgohlar, kompyuterlar, turli avtomatik va mexanik qurilmalarni kuzatamiz. Ijrochiga tavsiya etilayotgan ko‘rsatmalar, uning uchun tushinarli mazmunda bo‘lishi shart, aks holda ijrochi oddiygina amalni ham bajara olmaydi. Undan tashqari, ijrochi har qanday amalni bajara olmasligi ham mumkin. Har bir ijrochining bajarishi mumkin bo‘lgan ko‘rsatmalar yoki buyruqlar majmuasi mavjud, u ijrochining ko‘rsatmalar tizimi (sistemasi) deyiladi. Demak, ijrochi uchun berilayotgan har bir ko‘rsatma ijrochining ko‘rsatmalar tizimiga mansub bo‘lishi lozim. Ko‘rsatmalarni ijrochining ko‘rsatmalar tizimiga tegishli bo‘ladigan qilib ifodalay bilishimiz muhim ahamiyatga ega. Masalan, quyi sinfning a’lochi o‘quvchisi "son kvadratga oshirilsin" degan ko‘rsatmani tushinmasligi natijasida bajara olmaydi, lekin "son o‘zini o‘ziga ko‘paytirilsin" shaklidagi ko‘rsatmani bemalol bajaradi, chunki u ko‘rsatma mazmunidan ko‘paytirish amalini bajarish kerakligini anglaydi.
Aniqlik. Ijrochiga berilayotgan ko‘rsatmalar aniq mazmunda bo‘lishi zarur. Chunki ko‘rsatmadagi noaniqliklar mo‘ljaldagi maqsadga erishishga olib kelmaydi. Odam uchun tushinarli bo‘lgan "3-4 marta silkitilsin", "5-10 daqiqa qizdirilsin", "1-2 qoshiq solinsin", "tenglamalardan biri yechilsin" kabi noaniq ko‘rsatmalar robot yoki kompyuterni qiyin ahvolga solib qo‘yadi. Bundan tashqari, ko‘rsatmalarning qaysi ketma-ketlikda bajarilishi ham muhim ahamiyatga ega. Demak, ko‘rsatmalar aniq berilishi va faqat algoritmda ko‘rsatilgan tartibda bajarilishi shart ekan.
Ommaviylik. Har bir algoritm mazmuniga ko‘ra bir turdagi masalalarning barchasi uchun ham o‘rinli bo‘lishi kerak. YA’ni masaladagi boshlang‘ich ma’lumotlar qanday bo‘lishidan qat’iy nazar algorim shu xildagi har qanday masalani yechishga yaroqli bo‘lishi kerak. Masalan, ikki oddiy kasrning umumiy mahrajini topish algoritmi, kasrlarni turlicha o‘zgartirib bersangiz ham ularning umumiy mahrajlarini aniqlab beraveradi. Yoki uchburchakning yuzini topish algoritmi, uchburchakning qanday bo‘lishidan qat’iy nazar, uning yuzini hisoblab beraveradi.
Natijaviylik. Har bir algoritm chekli sondagi qadamlardan so‘ng albatta natija berishi shart. Bajariladigan amallar ko‘p bo‘lsa ham baribir natijaga olib kelishi kerak. Chekli qadamdan so‘ng qo‘yilgan masala yechimga ega emasligini aniqlash ham natija hisoblanadi. Agar ko‘rilayotgan jarayon cheksiz davom etib natija bermasa, uni algoritm deb atay olmaymiz.

2. Odatda uchta algoritm turi mavjud: chizio`li, tarmoo`lanuvchi va

takrorlanuvchi (siklik) algoritm. CHIZIQLI algoritm - kelish tartibida faqat bir marta bajariladigan amallarning sodda ketma-ketligi bo`lib, u bir martagina bajariladi va buning natijasida kerakli natijaga erishiladi. Chizio`li algoritmlarda xech qanday shart tekshirilmaydi va jarayonlar tartib bilan ketma-ket bajariladi. Demak , chizio`li

algoritmlar sodda hisoblashlar ketma-ketligi yoki amallar ketma-ketligidir.

Ko`pchilik oddiy hisob-kitoblarni talab qiladigan masalalarning echilish algoritmi,form yosda ishlatiladi. Masalan xilma-xil o`yinlar, lotoreyalar, matematik,



trigonometchiligidir, chunki soha formulalar bo`yicha hisoblashlar yoki matritsaviy hisoblar xuddi shu guruxga misol qilib keltirilishi mumkin. TARMOQLANUVCHI algoritmda odatda qandaydir mantiqiy shartning bajarilishi tekshiriladi, ya’ni (a> 0, a< v, a#v va boshqalar). Demak, biror-bir shartning bajarilishi bilan bog`liq ravishda to`ziladigan algoritmlarga tarmoo`lanuvchi algoritmlar deb ataladi. Ular hisoblashlar yoki jarayonlar ketma- ketligini aniqlaydigan ma’lum shartlarni o`z ichiga oladi.TAKRORLANUVCHI (siklik) algoritm deb ko`p marta bajariladigan amallarning muayyan ketma-ketligiga tushuniladi. Bu yerda mantio` jismi deb ataluvchi asosiy blok talab qilingan hisoblash shartini amalga oshiradi. Bunday algoritmlar ma’lum bir shart asosida algoritmda bir necha marta takrorlanib turadigan jarayonlarga xos bo`ladi. Demak, takrorlanuvchi algoritmlar deb shunday algoritmlarga aytiladiki, ularda bir yoki bir necha amallar ketma-ketligi bir necha marta takrorlanadi. 3. Foydalanuvchi kompyuter bilan muloqat qilish uchun kompyuter “tili” ni bilishi ham talab qilinadi. Kompyuter tushunadiga “til” dasturlash tili deb ataladi. Biror masalani kompyuterda yechish uchun, avvalo, uning algoritmi tuzilishi va bu algoritmni kompyuter tushunadigan ko`rsatmalar va qonun-qoidalar asosida yozilisi kerak bo`ladi. Bu yozuv dastur bajarishi mumkin bo`lgan ko`rsatmalarning izchil tartibidan iborat ekan. Kompyuter uchun dastur tuzish jarayoni dasturlash va dasturnituzadigan kishi dasturchi deb ataladi.Hozirgi kunda hisoblash, muhandis-texnik, iqtisodiy, matnli va sonli axborotlarni taxlil qilish va boshqa masalalarni yechish uchun yuqori darajadagi dasturlash tillari mavjud. Bular jumlasiga Beysik, Fortrant, Paskal, Kobol va boshqa tillarni kiritish mumkin.Beysik dasturlash tili 1964 yili AQSHning Dortmunt kollejji ilmiy xodimlari Jon Kemeni va Tmes Kurtsi tomonidan turli hisoblashlarga doirmasalalarni kompyuter bilan muloqat holda hal qilishi uchun yaratiladi. “Basic” so`zi Beginners Allpyrpose Sumbolic Instruction Code dan olingan bo`lib, o`zbek tilida “boshlovchilar uchun mo`ljallangan ko`p maqsadli, belgili ko`rsatmalar tili” degan ma`noni bildiradi. Beysik dasturlash tili soddaligi va kompyuter xotirasiga quyiladigan talablarning juda kamligi sababli bu dasturlash tili boshqa dasturlash tillari qatori butun dunyoda shaxsiy kompyuterlar uchun keng foydalanadigan til bo`lib qoldi.Fortran tili 1954 yilda ishlab chiqilgan. Fortran so`zi inglizcha Formula translator so`zidan olingan bo`lib, formula tarjimonchisi degan ma`noni bildiradi. Fortran tili muhandislik va ilmiy texnik masalalarni yechishga mo`ljallangan dasturlash tili hisoblanadi.Paskal dasturlash tili Shveysariyalik professor Virt Niklaus tomonidan 1971 yilda yaratilgan bo`lib, 1981 yilda Paskal tilining xalqaro standarti qabul qilingan. Paskal tili jamlovchi mashinani yaratgan fransuz fizigi Blez Paskal xotirasiga quyilgan. Paskal tilidan ilmiy texnik, muhandislik masaalarni yechishda keng ko`lamda foydalaniladi.Kobol tili 1959 yilda yaratilgan bo`lib, iqtisodiy xarakterga ega bo`lgan masalalarni yechishga mo`ljallangan [1,14,23,24,26,28]. Hozirgi paytda zamonaviy dasturlash tillaridan biri hisoblangan Delphi dasturlash tilidan keng foydalaniladi. Delphi dasturlash tili - bu Windows OT muhitida ishlashga mo‘ljallangan bo‘lib, u 1995-yildа Borland kоmpаniyasi dаsturlаri guruhi Chаk (Chuck) vа Dеnni (Danny) tоmоnidаn yaratilgan. Mazkur dastur o‘zining ba’zi bir xususiyatlari bilan boshqa dasturlash tillaridan ajralib turadi. Shu sababdan bugungi kunda Delphi dasturlash tili akademik litsey, kasb-hunar kollejlari hamda oliy o‘quv yurti fan dasturlariga kiritlgan [6,15,16,24,25,38].C++ dasturlash tili C tiliga asoslangan. C esa o'z navbatida B va BCPL tillaridan kelib chiqqan. BCPL 1967 yilda Martin Richards tomonidan tuzilgan va operatsion sistemalarni yozish uchun mo'ljallangan edi. Ken Thompson o'zining B tilida BCPL ning ko'p hossalarini kiritgan va B da UNIX operatsion sistemasining birinchi versiyalarini yozgan. BCPL ham, B ham tipsiz til bo'lgan. Yani o'garuvchilarning ma'lum bir tipi bo'lmagan - har bir o'zgaruvchi kompyuter hotirasida faqat bir bayt yer egallagan. O'zgaruvchini qanday sifatda ishlatish esa, yani butun sonmi, kasrli sonmi yoki harfdekmi, dasturchi vazifasi bo'lgan[32,37]. C tilini Dennis Ritchie B dan keltirib chiqardi va uni 1972 yili ilk bor Bell Laboratoriyasida, DEC PDP-11 kompyuterida qo'lladi. C o'zidan oldingi B va BCPL tillarining juda ko'p muhim tomonlarini o'z ichiga olish bilan bir qatorda o'zgaruvchilarni tiplashtirdi va bir qator boshqa yangiliklarni kiritdi. Boshlanishda C asosan UNIX sistemalarida keng tarqaldi. Hozirda operatsion sistemalarning asosiy qismi C/C++ da yozilmoqda. C mashina arhitekturasiga bog'langan tildir. Lekin yahshi rejalashtirish orqali dasturlarni turli kompyuter platformalarida ishlaydigan qilsa bo'ladi[31,35,36]. 1983-yilda, C tili keng tarqalganligi sababli, uni standartlash harakati boshlandi. Buning uchun Amerika Milliy Standartlar Komiteti (ANSI) qoshida X3J11 tehnik komitet tuzildi. 1989 yilda ushbu standart qabul qilindi. Standartni dunyo bo'yicha keng tarqatish maqsadida 1990 yilda ANSI va Dunyo Standartlar Tashkiloti (ISO) hamkorlikda C ning ANSI/ISO 9899:1990 standartini qabul qilishdi. Shu sababli C da yozilgan dasturlar kam miqdordagi o'zgarishlar yoki umuman o'zgarishlarsiz juda ko'p kompyuter platformalarida ishlaydi[30,33]. C++ 1980 yillar boshida Bjarne Stroustrup tomonidan C ga asoslangan tarzda tuzildi. C++ juda ko'p qo'shimchalarni o'z ichiga olgan, lekin eng asosiysi u ob'ektlar bilan dasturlashga imkon beradi[34,35,37]. Dasturlarni tez va sifatli yozish hozirgi kunda katta ahamiyat kasb etmoda. Buni ta'minlash uchun ob'ektli dasturlash g'oyasi ilgari surildi. Huddi 70-chi yillar boshida strukturali dasturlash kabi, programmalarni hayotdagi jismlarni modellashtiruvchi ob'ektlat orqali tuzish dasturlash sohasida inqilob qildi[30,31,32,33,34,35,36,37]. C++ dan tashqari boshqa ko'p ob'ektli dasturlshga yo'naltirilgan tillar paydo bo'ldi. Shulardan eng ko'zga tashlanadigani Xerox ning Palo Altoda joylashgan ilmiy-qidiruv markazida (PARC) tuzilgan Smalltalk dasturlash tilidir. Smalltalk da hamma narsa ob'ektlarga asoslangan. C++ esa gibrid tildir. Unda C ga o'hshab strukturali dasturlash yoki yangicha, ob'ektlar bilan dasturlash mumkin. Yangicha deyishimiz ham nisbiydir. Ob'ektli dasturlash falsafasi paydo bo'lganiga ham yigirma yildan oshayapti.   C++ funksiya va ob'ektlarning juda boy kutubhonasiga ega. Yani C++ da dasturlashni o'rganish ikki qismga bo'linadi. Birinchisi bu C++ ni o'zini o'rganish, ikkinchisi esa C++ ning standart kutubhonasidagi tayyor obyekt funksiyalarni qo'llashni o'rganishdir[34,35,36].

4. Pascal dasturlash tili yuqori darajali obyektga yo'naltirilgan dasturlash tili. Pascal dasturlash tili 1970-yilning boshida Niklaus Wirth tomonidan yaratilgan. Pascal dasturlash tili, dasturlashni tizimli, strukturaviy va protseduraviy o'rgatish uchun ishlab chiqilgan. Lekin Pascal dasturlash tilidan foydalanib ham yuqori darajali mukammal dasturlarni tuzish mumkin.

Pascal dasturlash tilining asosi Algol tilidir. Pascal dasturlash tili juda ko'plab ma'lumotlar toifasiga ega til va dasturlarni strukturaviy dasturlashga juda qulay. Hozirgi Pascal kodlarini o'qisangiz xuddi ingliz tilida matn o'qiyotgandek bo'lasiz. Pascal dasturlash tili ko'plab mamlakatlarda hozirda ham qo'llanilayotganining sabablari :

* O'rganish juda oson;

* Strukturalashgan dasturlash tili;

* Mustahkam, ishonchli dasturlar tuzish imkoni mavjudligi;

* Juda ko'plab OTlarda kompilyatsiya qilishni imkoni borligi;

* va boshqalar...

5. Ma’lumki, har qanday tilni o‘rganish uning alfavitini o‘rganishdan boshlanadi. Tilning alfaviti - shu tilgagina tegishli bo‘lgan asosiy belgilari va tushunchalar to‘piamidan iborat bo‘ladi. Pascal tilining alfavitini tashkil etuvchi asosiy belgilar jamlamasini 3 guruhga ajratish mumkin: harflar, raqamlar va maxsus belgilar. Til alfavitining metalingvistik (Bekus - Naur) formulasi quyidagicha bo‘ladi: ::=|| - tetter r A..-Z - r- - •- -- - d ig it - 0 ...9 - • hex dglt —т 0.. \ A. I i~f A..JP Л Л J Harf sifatida katta va kichik lotin harflari ishlatiladi. Ya’ni 26 ta lotin alifbosi harflari: A, a. B, b, Cc, Dd, Ее, Ff, Gg, Hh, Ii, Jj, Kk, LI, Mm, Nn, Oo, Pp, Qq, Rr, Tt, Uu, Vv, Ww, Xx, Yy, Zz. Lekin, matnlar va programmaga izohlar yozish uchun kirill alifbosining bosh va kichik harflarini ham alfavitga kiritilgan. Raqamlar sifatida oddiy arab raqamlari olingan: ::=0|l|2|3|4|...|9 Maxsus belgilar ko‘p sonli va bir jinssiz bo‘lganligi uchun ularni o‘z navbatida 4 ta guruhga ajratamiz: ::=|||. 141 ::= * | / | + | -40 Bu amallar mos ravishda ko‘paytirish, bo‘lish, qo‘shish va ayirish belgilari hisoblanadi.

Ajratgichlar guruhini quyidagi belgilar tashkil qiladi: ::= . | , | : | ; | ( | ) | [ | ] | { | } | ' | @\ “”| ! | ? |%| $| &| | Ajratgichlaming vazifalarini tilni o'rganish davomida aniqlab boramiz. Xizmatchi so‘zlar guruhi juda keng, shuning uchun bu so‘zlarni hammasini birdaniga yodlab, eslab qolish shart emas, balki ulardan foydalanish davomida ketma-ket eslab qolinaveradi: ::=and | array | begin | case | const ] div | do | downto | else | end | for | function | goto | if | in | label | mod | nil | not | of | or | packed | program ] procedure | record | repeat | set | then | to j type | until | var | while | with Turbo pascal dasturlash tilining xizmatchi so'zlari:




Yüklə 23,46 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin