O‘zbеkiston rеspublikasi oliy va o‘rta maxsus ta’lim vazirligi andijon davlat univеrsitеti axborot tеxnologiyalari va kompyutеr injiniringi fakultеti axborot tеxnologiyalari kafеdrasi kurs ishi


Download 0.53 Mb.
bet6/12
Sana30.04.2023
Hajmi0.53 Mb.
#1416402
1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
418-guruh Shamsuddinov Sh

int

  • float

  • complex

    1
    x = 1 # int
    2
    y = 2.8 # float
    3
    z = 1j # complex
    Python dasturlash tilida har qanday o'zgaruvchini turini aniqlash uchun type() funksiyasidan foydalangan holda keladigan o'zgaruvchi yoki belgilangan o'zgaruvchini turini aniqlash imkoniyati mavjud.
    1
    x = 1
    2
    y = 2.8
    3
    z = 1j
    4

    5
    print(type(x))
    6
    print(type(y))
    7
    print(type(z))



    int - bu turgan tegishli sonlar o'nlik sonlar bo'lmagan butun qiymatga ega qoldiq qismiga ega bo'lmagan va manfiy yoki musbat sonlar kiradi.



    Python dasturlash tilida boshqa dasturlash tillari kabi sonlar turini bir turdan boshqa bir turga o'tkazish imkoniyati mavjud. Buning uchun int(), float()va complex() funksiyalardan foydalanishingiz mumkin.

    Tasodifiy raqam.


    Python random()tasodifiy raqamni hosil qilish funktsiyasiga ega emas , ammo Python randomtasodifiy raqamlarni chiqarish uchun ishlatilishi mumkin bo'lgan ichki modulga ega :

    1
    import random


    2

    3
    print(random.randrange(1, 10))
    9
    Turli xil dasturlash tillarida tasodifiy sonlarni yaratish
    Hey! Men boshqasi bilan qaytdim.

    Ushbu blog mening sevimli dasturlash tillarida tasodifiy raqamlarni yaratish uchun to'plamdir. Mening maqsadim siz hozir ishlayotgan dasturlash tilida tasodifiy sonlarni yaratishni o'rganish uchun yagona manbaga ega bo'lishdir.

    Tasodifiy raqamlarni yaratish dasturlashning eng muhim jihatlaridan biridir. Ko'p karta o'yinlari omadga qarab o'ynaladi. Bu omad tasodifiy kartani olishdan boshqa narsa emas. Shuningdek, tasodifiy sonlarni yaratishda statistik namuna olish, kriptografiya, qimor o'yinlari va boshqa ko'plab ilovalar mavjud. Bu butun Las-Vegasni boshqaradigan NARSA!!
    Dasturlashda tasodifiy sonlarni yaratish asosan zarlarni tashlash, tanga ag'darish yoki o'yin kartalari palubasini aralashtirish kabi asosiy misollarda qo'llaniladi. Oldingi blogimda 3 xil rangni olish uchun tasodifiy raqamlardan foydalandim (bu yerga havola).
    Haaa! Bu juda ko'p kirish. Birdan boshlaylik....
    JavaScript
    JavaScript mashhur dasturlash tillaridan biridir. JavaScript universal dasturlash tili bo'lib, u yuqori darajadagi moslashuvchanlik va ishlashni ko'rsatadi. Undan foydalanish bepul, o'rganish oson va amalga oshirish oson (vebda ham, gibrid mobil ilovalarda ham). Bu sabablarning barchasi birgalikda uni mukammal platformalararo dasturlash tiliga aylantiradi.

    Xo'sh, bu tilda tasodifiy raqamlarni qanday yaratish mumkin? Quyidagi kod buni amalga oshiradi:

    var rand = Math.random();
    Bu erda rand o'zgaruvchisi 0 (shu jumladan) va 1 (eksklyuziv) oralig'ida tasodifiy qiymatni saqlaydi. 1 dan N gacha bo'lgan tasodifiy sonni yaratish uchun quyidagi kod ishlatiladi:
    var rand = Math.floor(Math.random * N) + 1;
    Birinchidan, biz 0 dan 1 gacha bo'lgan tasodifiy kasrni olamiz. Keyin, biz bu tasodifiy kasrni yuqori chegara bilan ko'paytiramiz (bu holda, u N). Yaratilgan raqam 0 va N (0 x N = 0, 1 x N = N) oralig'idagi mahsulotdir.

    Nihoyat, biz uni polga qo'yamiz, ya'ni biz ushbu mahsulotdan kichik yoki teng bo'lgan eng yaqin butun sonni olamiz. Ushbu qavatli mahsulot 0 va N-1 orasida. Buning sababi, 1 eksklyuziv. Shuning uchun yuqoridagi mahsulotimizda N tasodifiy qiymat sifatida tanlanishi mumkin emas. Nihoyat, polli mahsulot 1 ga oshiriladi. Endi umumiy tenglama 1 dan N gacha (ikkalasi ham) oralig'ida keladi.


    Java
    Java "asta-sekin o'ladigan" dasturlash tillaridan biridir. Ammo bugungi kunda ham u boshqalarga qaraganda ko'plab ilovalarga ega. Java ning asosiy xususiyatlari tezlik, xavfsizlik va platformalararo ilovalardir. Java tilining asosiy sohalariga Android ilovalarini ishlab chiqish, dasturiy ta'minotni ishlab chiqish va boshqalar kiradi.
    Keling, tasodifiy raqamlarni qanday yaratishni ko'rib chiqaylik:
    double rand = Math.random();
    JavaScript bilan bir xilmi? Javob "HA". Ammo bu yagona yo'lmi? Arzimaydi!

    Java.util paketidagi Random klassi bizga kerak bo'lgan hamma narsani beradi. Bu sinf mening oldingi blogimda amalga oshirilgan. Shunday qilib, agar siz ishlaydigan misolni ko'rishni istasangiz, mening oldingi blogimni bu erda o'qing.


    Eslatma: Ishlashdan oldin ushbu sinfni import qilganingizga ishonch hosil qiling.
    Shuning uchun, 1 dan N gacha bo'lgan tasodifiy sonni olish uchun biz quyidagi koddan foydalanamiz:

    Tasodifiy rand = yangi Random();


    int r1 = rand.nextInt(N) + 1;
    C++
    Mana muammo! Lekin birinchi navbatda bu yigitni tanishtiraman.
    C++ keng tarqalgan dasturlash tilidir. Bu asosan C ning kengaytmasi bo'lib, ob'ektga yo'naltirilgan dasturlash kabi xususiyatlarni o'z ichiga oladi. O'rganish ancha qiyinroq, lekin natijada dasturchiga o'z kodi ustidan ko'proq nazorat qilish imkonini beradi. C++ tilining asosiy ilovalariga raqobatbardosh dasturlash, video oʻyinlar va moliyaviy ilovalar kiradi. Aslida, u deyarli barcha maqsadlarda ishlatilishi mumkin.
    C++ bilan tasodifiy sonlarni qanday yaratish mumkin? Quyidagi kod 1 dan N gacha tasodifiy son hosil qiladi:

    int r = rand() % N + 1;


    Rand() funktsiyasi 0 va RAND_MAX oralig'idagi butun sonni qaytaradi. Qolgan modulni olib, biz funktsiya N-1 ga qaytishi mumkin bo'lgan maksimal qiymatni cheklaymiz. Nihoyat, unga 1 qo'shilishi bizga 1 dan N gacha (ikkalasi ham) tasodifiy qiymatni beradi.

    Kodingiz chiqishida biror narsani sezdingizmi? Tasodifiy qiymat yoki tasodifiy qiymatlar ketma-ketligi har doim bir xilmi? Quyidagi kodni ko'p marta ishlatdim, lekin bir xil natijaga erishdim:

    uchun (int i = 0; i < 5; i++)
    cout << rand() % 5 << endl;
    Buning sababi shundaki, biz hech qachon psevdo-tasodifiy raqamlar va haqiqiy tasodifiy raqamlar haqida gapirmaganmiz. Buning sababi shundaki, rand() funktsiyasidan yaratilgan tasodifiy son aslida tasodifiy emas. Bu shunchaki transformatsiya (psevdo-tasodifiy raqamlarni yaratish haqida ko'proq bilish uchun bu yerni bosing). Har safar rand() ga qo'ng'iroq qilganingizda, u urug'ni yoki yaratilgan oxirgi tasodifiy sonlarni oladi, bu raqamlar ustida matematik operatsiyani bajaradi va natijani qaytaradi. Shunday qilib, agar urug'ning holati har safar bir xil bo'lsa (agar siz srandni chinakam tasodifiy raqam bilan chaqirmasangiz), siz doimo bir xil "tasodifiy" raqamlarni olasiz. Quyidagi kod buni hal qiladi:

    #include


    #o'z ichiga
    std nom maydonidan foydalanish;
    int main() {
    srand (vaqt (NULL));
    uchun (int i = 0; i < 5; i++) {
    cout << rand() % 5 << endl;
    }
    qaytish 0;

    Python
    Kelajak tili bu yerda! Python yuqori darajadagi dasturlash tili bo'lib, u skript tili sifatida yoki ob'ektga yo'naltirilgan dasturlash uchun ishlatilishi mumkin. Python hamma narsani qila oladi. O'rnatilgan va uchinchi tomon kutubxonalari juda ko'p bo'lib, ular Python-ga "Salom dunyo!" yozish kabi hamma narsani qilishga yordam beradi. bir qatorda mashinani o'rganish algoritmlarini amalga oshirish uchun eng yaxshi tillardan biriga aylanish.


    Lekin biz bu yerda faqat tasodifiy sonlarni yaratish uchunmiz. Buni quyidagicha amalga oshirish mumkin:
    tasodifiy import qilish
    chop random.randint(0, 5)
    Bu 1, 2, 3, 4 yoki 5 ni chiqaradi. Agar kattaroq raqamni xohlasangiz, uni ko'paytirishingiz mumkin. Masalan, 0 dan 100 gacha bo'lgan tasodifiy sonni quyidagicha ishlab chiqarish mumkin:
    random.random() * 100
    Python shuningdek, roʻyxatdan tasodifiy tanlovni olish, roʻyxatni aralashtirish va boshqa koʻp narsalar uchun oʻrnatilgan funksiyalarga ega.
    tasodifiy import qilish
    myList = [2, 109, False, 10, “Lorem”, 482, “Ipsum”]
    random.choice (mening ro'yxatim)
    ro'yxatdagi #tasodifiy element
    tasodifiy.shuffle(roʻyxat)
    #roʻyxatni aralashtirib yubordi
    #misol = [109, 2, 10, “Loren”, False, “Ipsum”, 482]
    Python yordamida tasodifiy sonlarni yaratish haqida ko'proq ma'lumot olishingiz mumkin.
    Tezkor
    Swift dasturlash tili Apple tomonidan Objective-C dasturlash tilining ko'plab xususiyatlarini o'z ichiga olish va yaxshilash uchun ishlab chiqilgan. Swift - bu zamonaviy til va ulardan foydalanish oson. Bu iOS rivojlanishining asosidir.
    Quyidagi kod 0 dan 10 gacha (ikkalasi ham) tasodifiy sonni hosil qiladi:
    ruxsat raqami = Int.tasodifiy (da: 0 … 10)
    Ushbu kod 0 (shu jumladan) va 10 (eksklyuziv) o'rtasidagi tasodifiy raqamlarni hosil qiladi:
    let raqam = Int.tasodifiy(da: 0 ..< 10)
    Shuningdek, bizda Swift-da mantiqiy tasodifiy generator mavjud. Buni quyidagi tarzda amalga oshirish mumkin:
    let b = Bool.random()
    Va nihoyat, biz shunday tasodifiy kasrlarni ham yaratishimiz mumkin:
    let raqam = Float.random(da: 0 ..< 1)
    Swift, xuddi Python kabi, massivdan tasodifiy elementni qaytarish yoki massivni aralashtirish uchun o'rnatilgan funktsiyalarga ega:
    let nomlari = ["Ford", "Zaphod", "Trillian", "Artur", "Marvin"]
    let randomName = names.randomElement()
    //"nomlar" dan tasodifiy element oldi
    names.shuffle()
    //`nomlar` endi boʻlishi mumkin: [“Zafod”, “Marvin”, “Artur”, “Ford”, “Trillian”]
    Swift yordamida tasodifiy sonlarni yaratish haqida ko'proq ma'lumot olishingiz mumkin.
    C#
    C# Java tiliga juda o'xshaydi, lekin ancha qiyinroq. Bu eng ilg'or va qulay dasturlash tillaridan biridir. U Windows ilovalari, XML veb-xizmatlari, mijoz-server ilovalari va ma'lumotlar bazasi ilovalarini yaratish uchun ishlatiladi.
    Tasodifiy sonlarni yaratish xuddi Java-dagi Random sinfiga o'xshaydi. Quyidagi kodga qarang:
    Tasodifiy rnd = yangi Random();
    int oyi = rnd.Keyingi(1, 13); // 1 dan 12 gacha raqam yaratadi
    int zar = rnd.Next(1, 7); // 1 dan 6 gacha raqam yaratadi
    int karta = rnd.Next(52); // 0 dan 51 gacha raqam yaratadi
    Bu juda ko'p kodlash edi. Ammo ushbu blog orqali biz turli xil dasturlash tillarida tasodifiy sonlarni yaratishning turli usullarini o'rganishga muvaffaq bo'ldik. Ushbu bilim bilan siz hatto Las-Vegasda o'z kazinongizni ochishingiz mumkin! Agar sizga ushbu blog yoqqan bo'lsa, qarsak chalish tugmasini 50 marta bosganingizga ishonch hosil qiling.
    Tasodifiy sonlarni hosil qilish
    Tasodifiy sonlarni qanday hosil qilish kerak. Siz dasturlash tillarida mashq qilyapsizmi va qanday generatsiya qilishni tushunishni xohlaysizmi tasodifiy sonlar? Kichkintoyni tashkil qilishga qaror qildingizmiyoki tanlov blogingizda va tanlov g'oliblarini tanlash uchun tasodifiy raqamlarni chiqarishga imkon beradigan oddiy va samarali xizmatni qidiryapsizmi? Shaxsiy kompyuter yordamida maktab loyihasi ishtirokchilarini jalb qilmoqchimisiz, lekin kompyuterga dasturlarni o'rnatishga vaqt / xohishingiz yo'qmi? Agar aynan shunday bo'lsa, men sizga mos echim topdim deb o'ylayman.
    Ushbu qo'llanmada, aslida men tushuntiraman tasodifiy sonlarni qanday hosil qilish u erda eng mashhur va keng qo'llaniladigan dasturlash tillari orqali. Bundan tashqari, men sizga bir xil veb-saytlar orqali qanday qilib bir xil natijaga erishishni ko'rsataman va ilovalar mobil telefonlar va planshetlar uchun: oxirgi ikki holatda kompyuter bilan ishlash talab qilinmaydi.
    Ammo, davom ettirishdan oldin, men savolning muhim bir nuqtasiga aniqlik kiritishni to'g'ri deb o'ylayman: aslida, kompyuterlar, mobil telefonlar va planshetlar tomonidan ishlab chiqarilgan raqamlar, aksariyat hollarda, aniqlanishi kerak psevdor tasodifiy. Sababi aniq: ular aniq tashqi sharoitlar (masalan, joriy sana va vaqt, protsessor holati, disk, ekran, o'rnatilgan dasturlar soni, veb-server holati va h.k.) asosida yaratilgan bo'lib, ular juda katta darajada bo'lsa-da. masofaviy yo'l, har doim bir xil raqamni olish uchun sun'iy ravishda "ko'paytirilishi" mumkin.





    Download 0.53 Mb.

    Do'stlaringiz bilan baham:
  • 1   2   3   4   5   6   7   8   9   ...   12




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