• 14-Mavzu: Davlat mashinalari misollar
  • 14-Mavzu: Davlat mashinalari misollar




    Download 447.14 Kb.
    bet1/6
    Sana02.04.2024
    Hajmi447.14 Kb.
    #185567
      1   2   3   4   5   6
    Bog'liq
    Abduxalilov Abduxamid 3-topshiriq



    MUHAMMAD AL-XORAZMIY NOMIDAGI
    TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI FARG’ONA FILIALI
    DASTURIY INJINIRINGI VA RAQAMLI IQTISODIYOT FAKULTETI
    DASTURIY INJINIRING YO’NALISHI
    650-20-GURUH TALABASI 
    NABIJONOV XAYRULLONING
    TIZIMLI DASTURLASH
    FANIDAN TAYYORLAGAN
    14-20 TOPSHIRIQLARI

    14-Mavzu: Davlat mashinalari misollar
    Davlat mashinalari misollar



    Kompyuter fanlari tushunchalariga kirish


    Kompyuter fanlari bizga dasturlash imkonini beradi, lekin kompyuter fanining asosiy tushunchalarini tushunmasdan ko'p dasturlashni amalga oshirish mumkin.
    Bu har doim ham yomon narsa emas. Biz dasturlaganimizda, biz abstraktsiyaning ancha yuqori darajasida ishlaymiz.
    Biz mashina haydaganimizda, biz faqat ikki yoki uchta pedal, vites o'tkazmasi va rul g'ildiragi bilan shug'ullanamiz. Siz mashinani qanday ishlashi haqida aniq tasavvurga ega bo'lmasdan xavfsiz boshqarishingiz mumkin.
    Biroq, agar siz mashinani o'z imkoniyatlari chegarasida boshqarmoqchi bo'lsangiz, avtomobillar haqida faqat uchta pedal, vites o'zgartirish va rul g'ildiragidan ko'ra ko'proq ma'lumotga ega bo'lishingiz kerak.
    Xuddi shu narsa dasturlash uchun ham amal qiladi. Ko'pgina kundalik ishlarni kompyuter fanini kam yoki umuman tushunmasdan bajarish mumkin. PHP da "Biz bilan bog'lanish" shaklini yaratish uchun hisoblash nazariyasini tushunishingiz shart emas.
    Biroq, agar siz jiddiy hisoblashni talab qiladigan kod yozishni rejalashtirmoqchi bo'lsangiz, hisoblashning kaput ostida qanday ishlashini biroz ko'proq tushunishingiz kerak bo'ladi.
    Ushbu maqolaning maqsadi hisoblash uchun ba'zi bir fundamental ma'lumotlarni taqdim etishdir. Agar qiziqish bo'lsa, men yanada ilg'or mavzular bilan shug'ullanishim mumkin, ammo hozir men eng oddiy mavhum hisoblash qurilmalaridan biri - chekli holat mashinasi ortidagi mantiqni ko'rib chiqmoqchiman.
    Cheklangan holat mashinasi - algoritmlarni loyihalash uchun ishlatiladigan matematik abstraktsiya.
    Oddiyroq qilib aytganda, davlat mashinasi bir qator kirishlarni o'qiydi. U kirishni o'qiganda, u boshqa holatga o'tadi. Har bir holat berilgan kirish uchun qaysi holatga o'tish kerakligini belgilaydi. Bu juda murakkab tuyuladi, lekin bu juda oddiy.
    Uzoq qog'ozni o'qiydigan qurilmani tasavvur qiling. Har bir dyuym qog'ozga bitta harf bosilgan - "a" yoki "b" harfi.
    Davlat mashinasi har bir harfni o'qiyotganda, u holatni o'zgartiradi. Mana juda oddiy holat mashinasi:



    Doiralar mashina bo'lishi mumkin bo'lgan "davlatlar" dir. Oklar - o'tish joylari. Shunday qilib, agar siz s holatida bo'lsangiz va "a" ni o'qisangiz, q holatiga o'tasiz. Agar siz "b" ni o'qisangiz, s holatda qolasiz.


    Shunday qilib, agar biz s dan boshlasak va yuqoridagi qog'oz tasmasini chapdan o'ngga o'qisak, biz "a" ni o'qiymiz va q holatiga o'tamiz.
    Keyin, biz "b" ni o'qiymiz va s holatiga qaytamiz.
    Yana bir "b" bizni s-da ushlab turadi, keyin esa "a" bizni q holatiga qaytaradi. Yetarlicha oddiy, lekin nima gap?
    Xo'sh, ma'lum bo'lishicha, siz shtat mashinasi orqali lentani o'tkazasiz va siz yakunlangan holatni o'rganib, harflar ketma-ketligi haqida biror narsa aytishingiz mumkin.
    Yuqoridagi oddiy holat mashinamizda s holatida tugaydigan bo'lsak, lenta "b" harfi bilan tugashi kerak. Agar q holatida tugaydigan bo'lsak, lenta "a" harfi bilan tugaydi.
    Bu ma'nosiz tuyulishi mumkin, ammo bunday yondashuv bilan hal qilinishi mumkin bo'lgan juda ko'p muammolar mavjud. HTML sahifasida quyidagi tartibda ushbu teglar mavjudligini aniqlash juda oddiy misol bo'ladi:



    Holat mashinasi html tegini o‘qiganligini ko‘rsatadigan holatga o‘tishi, bosh tegiga yetguncha aylanish, boshni yopish tegiga yetguncha aylanish va hokazo.


    Agar u yakuniy holatga muvaffaqiyatli o'tsa, sizda o'sha teglar to'g'ri tartibda bo'ladi.


    Cheklangan holat mashinalari ko'plab boshqa tizimlarni ko'rsatish uchun ham ishlatilishi mumkin - masalan, to'xtash o'lchagich mexanikasi, pop-mashina, avtomatlashtirilgan gaz nasosi va boshqa barcha turdagi.
    Deterministik chekli holat mashinalari
    Biz hozirgacha ko'rib chiqqan davlat mashinalari barchasi deterministik holat mashinalari. Har qanday holatdan ruxsat etilgan kirish uchun faqat bitta o'tish mavjud. Boshqacha qilib aytadigan bo'lsak, "a" harfini o'qiyotganingizda davlatdan chiqadigan ikkita yo'l bo'lishi mumkin emas. Avvaliga bu farqni qilish ahmoqona tuyuladi.
    Agar bir xil ma'lumotlar bir nechta holatga o'tishga olib kelishi mumkin bo'lsa, qarorlar to'plamidan nima foyda? Siz kompyuterga ayta olmaysiz, agar x == rost bo'lsa, doSomethingBig yoki doSomethingSmall ni bajaring, shunday emasmi?
    Xo'sh, siz davlat mashinasi bilan mumkin.
    Davlat mashinasining chiqishi uning yakuniy holatidir. U barcha qayta ishlashdan o'tadi, so'ngra yakuniy holat o'qiladi va keyin harakat qilinadi. Davlat mashinasi shtatdan shtatga o'tayotganda hech narsa qilmaydi.
    U qayta ishlaydi va oxiriga yetganda, holat o'qiladi va tashqi biror narsa kerakli harakatni boshlaydi (masalan, soda qutisini tarqatish). Bu deterministik bo'lmagan chekli holat mashinalari haqida gap ketganda muhim tushunchadir.
    Deterministik bo'lmagan chekli holat mashinalari
    Deterministik bo'lmagan chekli holat mashinalari - bu ma'lum bir holatdan berilgan kirish bir nechta turli holatga olib kelishi mumkin bo'lgan chekli holat mashinalari.


    Download 447.14 Kb.
      1   2   3   4   5   6




    Download 447.14 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    14-Mavzu: Davlat mashinalari misollar

    Download 447.14 Kb.