Informatika va at



Download 5,36 Mb.
bet36/201
Sana14.01.2022
Hajmi5,36 Mb.
#365225
TuriРеферат
1   ...   32   33   34   35   36   37   38   39   ...   201
Bog'liq
algatirm mazmua

n= [(A2—A1) /A3]  for­mula bilan hisoblanadi. Bunda [•] belgi sonning butun qismini ifodalaydi.

            Ichma-ich joylashgan sikl la r. Bir sikl tanasida boshqa bir yoki bir necha sikllar joylashgan algoritmlar ham bo'ladi (5-rasm).                                                  

            Rasmda j o'zgaruvchili sikl i o'zgaruvchili sikl ichiga joylashgan bo'lib 5, arasmda bo'yicha sikl tugashi bilan ning navbatdagi qiymatiga o'tilishi, 5, 6-rasmda i  o'zgaruvchili sikl tanasiga j  bo'yicha sikldan tashqari amal-

 

 



 

 



 

lar ham kirishi, 5, d-rasmda berilgan shart bajarilmasa, hech qanday amal bajarmasdan j ning keyingi qiymatiga o'tish, 5, e-rasmda berilgan shart bajarilsa, j bo'yicha sikl tugashi, bajarilmasa j ning keyingi qiymatiga o'tish kerakligi tasvirlangan. Ichmaich joylashgan sikl turlari bu tuzilishlar bilan tugamaydi. Bunday siklik tuzilishdagi algoritmlarni ishlab chiqqanda tashqi sikldan ichki sikl boshini tashlab o'tib, uning ichiga kirish mumkin emasligini unutmaslik kerak.



            Iteratsion algoritmlar. Ko'p hollarda amallarni necha marta takrorlashni avvaldan aniqlab bo'lmaydi. Takrorlash ma'lum bir shart bajarilguncha davom etadi. Bunday hollarda algoritmni 5-rasmda ko'rsatilgandek tashkil qilish mumkin.

            Takrorlash o'zgaruvchisi o'zgarmas qadam bilan o'zgarmaydi. 6, a-rasmda takrorlash sharti avvaldan tekshiriladigan, 6, 6-rasmda esa keyin tekshiriladigan tuzilish­dagi iteratsion (italyancha iteratixo — takrorlash so'zidan) algoritmning tarhi ko'rsatilgan.

            Birinchi holda sikl tanasidagi amallar biror marta ham bajarilmasligi mumkin bo'lsa, ikkinchi holda esa kamida bir marta bajariladi. Albatta siklik tuzilishdagi algoritmni ham iteratsion tuzilishda tasvirlash mumkin. Lekin modifikatsiya blokini ishlatganda  окtarh ixchamroq, bo'ladi. Takrorlash algoritmlarini tuzganda sikl tashqarisidan uning tanasiga kirish mumkin emasligini unutmaslik kerak. Chunki bunda sikl o'zgaruvchisining qiymati aniq-lanmagan bo'lib qoladi. Aksincha, sikl tanasidan chiqish mumkin. Bunda sikl o'zgaruvchisining qiymati undan chiq-qan paytdagidek bo'ladi.

            Cheksiz takrorlanuvchi algoritm. Bunday algoritm EHM bilan muloqot olib borishga imkon beruvchi operatorlari mavjud bo'lgan dasturlash tillarida ishlatiladi (masalan, BEYSIKda). Bunda takrorlash foydalanuvchi tomonidan tugatilguncha davom etadi.

            1-misol. у Iog2(ex2+lx+k) funksiyaning XЄ [a, b] kesmadagi qiymatlarini qadam bilan hisoblash algorit-mini tuzamiz.

            Boshlang'ich ma'lumotlar: a, b, e, l, k, h o'zgaruvchilaming qiymatlari bo'ladi. Ular a, b, e, l, k, h Є bo'lib, ko'lami ex2+lx+k>0 shart bilan aniqlanadi.

 

 

 



 

 



 

 

 



 

7)  1-axborotni bosmaga chiqarish;



8)  x = x+h qilib olib, xshartni tekshirish. Agar bu shart bajarilsa, 3-qadamga o'tish, bajarilmasa,  hisoblash-ni tugatish.

            Algoritmning blok-tarhi 7-rasmda keltirilgan.

            Birinchi algoritmning blok-tarhi ikkinchi algoritmniki-dan ixchamroq ekanligini ko'ramiz. Bunga modifikatsiya blokidan foydalanilganligi sababli erishildi.

 

 



 

 



2-bob

 DASTURLASH TILLARIGA NORASMIY KIRISH

 

2.1. MASALALARNI EHM DA YECHISH BOSQICHLARI



 

EHM bilan bevosita ishlashdan oldin qanday bosqichlarni bajarish kerakligini ko'rib chiqamiz. Istalgan hayotiy yoki matematik, fizik va hokazo masala shartlarini ifoda qilish dastlabki ma'lumotlar va fikrlarni tasvirlashdan boshlanadi va ular qat'iy ta'riflangan matematik yoki fizik va hokazo tushunchalar tilida bayon qilinadi. So'ngra yechishning maqsadi, ya'ni masalani yechish natijasida ayni nimani yoki nimalarni aniqlash zarurligi ko'rsatiladi.

Birinchi bosqich — masalani qo'yish. Istalgan masa­lani yechish uning qo'yilishidan boshlanadi. Masala shartining aniq ifodasi masalaning matematik (fizik va hokazo) qo'yilishi deb ham ataladi. Masalaning qo'yilishida boshlang'ich ma'lumotlar yoki argumentlar hamda qiymatlari aniqlanishi kerak bo'lgan kattaliklar, ya'ni natijalar ajratiladi. Masalani qo'yish uni yechishning birinchi bosqichi bo'ladi. Bunga turli-tuman misollar keltirish mumkin:

            1. Tomonlarining uzunligi ma'lum bo'lgan to'g'ri to'rtburchakning yuzi hisoblansin.

            2.  Bosib o'tilgan yo'l va ketgan vaqt ma'lum bo'lsa, yo'lovchining tezligi aniqlansin.

            3.  Mashhur Pifagordan so'rashdi: Sizning maktabingizga nechta o'quvchi qatnashadi va suhbatingizni tinglaydi? Pifagor javob berdi: mening o'quvchilarimning yarmi matematikani o'rganadi, choragi musiqani o'rgaradi, yettidan biri jimgina fikrlaydi, qolgani esa 3 ta. Pifagor maktabida nechta o'quvchi bo'lgan?

            4.  Shaxmat taxtasining kataklaridan bir katakka qayta yurmaslik sharti asosida, ot bilan yurib o'ting.

            5.  O'tloqdagi qo'ylarning sakkizdan birining kvadrati o'tlayotgan, qolgan 12 tasi yotgan bo'lsa, hammasi bo'lib nechta qo'y bor?

            Ikkinchi bosqich — matematik modelni qurish.

            Amaliy masalalarni hal etishda ob'ektlar — tabiat hodisalari (fizik yoki kimyoviy jarayonlar), mahsulot ishlab chiqarish jarayonlari, mahsulot ishlab chiqarish rejalari va shu kabilar bilan ish ko'rishga to'g'ri keladi. Ana shunday masalalarni qo'yish uchun avval tekshirilayotgan ob'ektni matematik atamalarda tavsiilash, ya'ni iloji bo'lsa, uning matematik modelini (ifodasini) qurish kerak. Mazkur model esa haqiqiy ob'ektni tekshirishni matema­tik masalani yechishga keltirish imkonini beradi. Modelning haqiqiy ob'ektga moslik darajasi amaliyotda tajriba orqali tekshiriladi. Tajriba—qurilgan modelni baholash va lozim bo'lgan holda uni aniqlashtirish imkonini beradi. Shuni ta'kidlash lozimki, har doim ham qo'yilgan masalaning matematik modelini yaratib bo'lavermaydi.

            Yuqorida keltirilgan masalalarning matematik modellarini tuzamiz.

            Birinchi masala uchun matematik model S = ab ko'ri-nishdagi iormuladan iborat. Bunda boshlang'ich ma'lumotlar tomonlari uzunligi va bo'lsa, natija to'g'ri to'rtburchakning yuzi S dan iboratdir.

            Ikkinchi masala uchun bosib o'tilgan yo'lni s, ketgan vaqtni deb belgilasak, yo'lovchining tezligi fizika kursidan ma'lum bo'lgan

 

 

 

matematik model bilan ifodalanadi. Bunda s va boshlang'ich ma'lumot, esa natijadir.



Uchinchi masalada deb o'quvchilar sonini belgilasak, u

 

 

yoki 3x—84=0 ko'rinishdagi chiziqli tenglamaga keladi. Bu yerda 3 va 84 boshlang'ich ma'lumotlarni, esa natijani ifodalaydi.



            To'rtinchi masala uchun oshkor ko'rinishdagi matematik model mavjud emas, shuning uchun ham bu masalani yechishda birinchi bosqichdan keyin to'g'ridan-to'g'ri uchinchi bosqichga o'tish mumkin.

Beshinchi masalada ni barcha qo'ylarning soni deb belgilasak, uni topish

 

 

 



ko'rinishdagi kvadrat tenglamani yechishga keladi. Umuman bu masalalar

 

kvadrat tenglama shaklidagi matematik model bilan ifodalanadi. Bunda a, b, с lar boshlang'ich ma'lumot bo'lsa, x (x1 . x2 ) natija bo'ladi.

            Shunday qilib, biz xodisalarni ifodalovchi matematik modellar bilan tanishdik. Albatta, hozir qurgan bu modellar juda sodda. Hayotda shunday murakkab masalalar uchraydiki, ular uchun matematik model yaratish juda ko'p kuch va vaqt talab etadi, ba'zi masalalarning esa modelini umuman tuzish mumkin emas.

            Uchinchi bosqich — yechish usulini aniqlash.

            Masalaning matematik modeli yaratilgandan so'ng, uni yechish usuli izlana boshlanadi. Ayrim hollarda masalani qo'yilishidan keyin to'g'ridan-to'g'ri masalani yechish usuliga ham o'tish kerak bo'ladi. Bunday masalalar oshkor ko'rinishdagi matematik model bilan ifodalanmasligi mumkin. Bu bosqich masalalarni EHM da yechishning uchin­chi bosqichini tashkil qiladi. Bunga misol qilib yuqorida keltirilgan matematik modellarni yechish usullarini keltirish mumkin. Ular (1,2,3,5- masalalar) bilan siz matematika kursidan tanishsiz. Xo'sh, to'rtinchi masala uchun yechish usuli nima yoki qanday bo'lishi mumkin? Shaxmatdan xabardor har bir kishiga ma'lumki, shaxmat taxtasining ixtiyoriy katagida turgan otrii yuqoridagi shart asosida har doim ham yurish mumkin emas. Hamma kataklardan o'tishning yagona usuli mavjud va u quyidagilardan iborat: faraz qilaylik, ot shaxmat taxtasining ixtiyoriy

bir katagida turibdi. Umuman olganda bu katakdan boshqa 8 ta katakka yurish mumkin. Yurilishi mumkin bo'lgan bu kataklarning har biridan ham yana nechadir kataklarga yurish mumkin. Mana shu mumkin bo'lgan yurishlarning eng kamini tanlash kerak, agar ular bir qancha bo'lsa, ixtiyoriy bittasini tanlash mumkin. Demak, otni shun­day bir katakka yurish kerak ekanki, bu katakdan yurili­shi mumkin bo'lgan kataklar soni eng kam bo'lsin. Faqat va faqat shu usul bilan qo'yilgan masalani hal qilish mumkin.

            To'rtinchi bosqich — yechish algoritmini tuzish.

            Navbatdagi bosqichda, ya'ni to'rtinchi bosqichda, ma­salani EHM dan foydalanib yechish uchun uning yechish algoritmi tuziladi. Algoritmni turli-tuman ko'rinishda yozish mumkin. Dasturlash fanining vazifalaridan biri ham algoritm tuzish usullarini o'rganishdan iboratdir. Bu jarayonda talabalarda masalani yechishning algoritmi, ya'ni algoritmik fikrlash usuli vujudga keladi.

Beshinchi bosqich — algoritmni dasturlash tiliga ko'chirish.

            Algoritmning EHM da bajarilishi uchun bu algoritm dasturlash tilida yozilgan bo'lishi lozim. Masalani yechish­ning bu bosqichida biror bir usulda tuzilgan algoritm ma'lum bir dasturlash tiliga ko'chiriladi. Masalan, agar algoritm bloktarh ko'rinishida tasvirlangan bo'lsa, uni dasturlash tiliga ko'chirish uchun har bir blokni tilning mos buyruqlari   bilan almashtirish yetarli.

            Oltinchi bosqich — dasturning bajarilishi.

            Bu bosqichda — dastur ko'rinishida yozilgan algoritmni EHM yordamida bajariladi. Bu bosqich dastur tuzuvchilar uchun eng qiyini hisoblanadi. Chunki dasturni mashina xotirasiga kiritishda ayrim xatoliklarga yo'l qo'yish mum­kin. Shuning uchun dasturni EHM xotirasiga kiritishda juda ehtiyot bo'lish kerak. Bu bosqich natija olish bilan tugallanadi.

            Yettinchi bosqich — olingan natijalarni tahlil qilish.

            Nihoyat, masalani yechishning yakunlovchi yettinchi bosqichi olingan natijalarni tahlil qilishdir. Bu bosqich olingan natijalar qanchalik haqiqatga yaqinligini aniqlash maqsadida bajariladi. Natijalarni tahlil qilish, zarur bo'lgan hollarda algoritmni, yechish usuli va modelini aniqlashtirishga yordam beradi.

            Shunday qilib, biz masalalarni EHM yordamida yechish bosqichlari bilan tanishib o'tdik. Shuni ta'kidlash kerakki, har doim ham bu bosqichlar bir-biridan yaqqol ajralgan holda bo'lmasdan, bir-biriga qo'shilib ketgan bo'lishi ham mumkin.

 

2.2. METALINGVISTIK FORMULALAR TILI



 

            Algoritmik tilning sintaksis qoidalarini yozish va tushuntirish uchun ham qandaydir til lozim bo'ladi. Bu til bilan dasturlashning algoritmik tillarini almashtirib yubormaslik kerak. Kiritilishi kerak bo'lgan bu til dasturlash tilini aniqlash uchun kerak bo'ladi. Bu til «meta till» deb ataladi. Tilni ifodalashda Bekus-Naurning metalingvistik formulalaridan (BNF) foydalaniladi.-

BNF tilida dasturlash tillarining sintaksisi ixcham va formulalar ko'rinishida aniqlanadi. Bu formulalar oddiy arifmetik formulalarga o'xshab ketadi, shuning uchun ham ularni metalingvistik formulalar (qisqacha metaformula) deb ataladi.

Metaformulaning o'ng va chap qismlari «::=» belgisi bilan ajratiladi. Belgining ma'nosi «aniqlanishi bo'yicha shunday» jumlasiga yaqinroq. Bu belgining o'ng tomonida meta o'zgaruvchi, chap tomonida esa meta o'zgaruvchining qiymatlar to'plami yotadi. Tushunishga oson bo'li­shi uchun meta o'zgaruvchilar, yoki ularning qiymatlari burchak qavslar («<» va «>») ichiga olib yoziladi. Masa­lan , , va hokazo.

            Meta o'zgaruvchilarning meta qiymatlari bir necha mumkin bo'lgan konstruksiyalardan tashkil rtopishi mumkin. Bu holda konstruksiyalar o'zaro tik chiziq ( | ) bilan ajratiladi. Bu belgining ma'nosi «yoki» so'ziga yaqinoq tushunchadir.

Metaformulalarga misollar:

1.::= A | В

::= | + |

bu formuladan deganda A yoki В harf-lari tushuniladi, tushunchasi ostida quyidagi 10 ta holning biri bo'lishi mumkin:

 

 

 



            2.  ::= 0|l

            3.  ::=   |  

            3-misolda o'ng tomonda aniqlanayotgan tushuncha yotibdi, bu meta formulalarning rekursiv xossasiga ega ekanligini ko'rsatadi.

            Meta formulalarni yozishda «{», «}» qavslar uchrab turadi. Bu qavs ichiga olib yozilgan konstruksiya takrorlanuvchi konstruksiya hisoblanadi.

            Misol:

::= {}

 

3-bob



 


Download 5,36 Mb.

Do'stlaringiz bilan baham:
1   ...   32   33   34   35   36   37   38   39   ...   201




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish