• Tekshirdi: Mamadaliyev X.A. Toshkent 2023
  • Algoritmlarni loyihalash fanidan




    Download 359.9 Kb.
    Pdf ko'rish
    Sana12.05.2023
    Hajmi359.9 Kb.
    #58999
    Bog'liq
    Algoritmlarni loyihalash-1
    Suyuqlik va gazlarning umumiy xossalari Reja Suyuqlik va gazlar, 11-bob. Elektron hukumat, 1700027602, 1700025805, 1700205216 (1), asdf, 3-tarbiyaci ma\'ruza, 4 mavzu An’anaviy sug‘rta va islomiy sug‘rta takoful o‘rtasidagi


    O‘ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA 
    KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI 
    MUHAMMAD AL-XORAZMIY NOMIDAGI 
    TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI 
    ALGORITMLARNI LOYIHALASH FANIDAN 
    Laboratoriya ishi-1
     
     
    Bajardi:Samandar Toshmaxamatov 
    Guruh:022-20 
    Tekshirdi: Mamadaliyev X.A.
    Toshkent 2023 


    Bu hisoblash uchun, avvalo funksiyani yaxshiroq yoritish uchun biror usulni ishlataylik. 
    Biz funksiyani quyidagi ko'rinishda yoritishni xohlaymiz: 
    f(x) = ln(x^2 + 1) * (x^2 + 3x + 1)^(1/3) 
    Integralni hisoblash uchun Simpson formulasi va Monte-Karlo usulidan foydalanasiz: 
    1. Simpson formulasi: 
    Simpson formulasi uchun odatda n tomonli bo'lmagan funksiya uchun oddiy ochiq 
    ko'rsatkichlarni yoritadigan n+1 ta nuqtalarni ishlatish keng qo'llanadi. 
    Bu formulaga ko'ra, integralning qiymati S integralni quyidagi formula orqali 
    hisoblanadi: 
    S = (b-a)/6 * (f(a) + 4*f((a+b)/2) + f(b)) 
    Bu formulaga ko'ra, biz integralni Q = S(N) + R kabi atamalarga ajratamiz, bulardan 
    S(N) - n ta to'g'ri to'g'ri zona yotiq selecti bo'lgan integralni topishga yordam beradi, va 
    R - qolgan joyning selekti bo'lgan va integralni qisqartiruvchi muammoga aylandiradi. 
    N. Simpson integrallarining to'liq hisoblarni topishda ishlatiladi. 
    2. Monte-Karlo usuli: 
    Monte-Karlo usuli n ta sodir nuqtaga to'g'ri to'g'ri zona yotiq selecti to'g'risidagi 
    cheklovni hisoblashga asoslangan formula bo'ladi. Uni integralni hisoblashda ishlatish 
    uchun teng saylarda n ta tasodifiy nuqta tayyorlaymiz va formula yordamida integralni 
    yaxlitlaymiz. Bu formulaga ko'ra: 
    ∫(a,b)f(x)dx = (b-a) * 1/n * Σᵢf(xi) 
    Bu yerda, xi - i chi hodisa boyicha tasodifiy nurta a va b oralig'ida yaratiladi. 
    Demak, funksiya quyidagi ko'rinishda yoziladi: 


    #include  
    #include  
    #include  
    #include  
    #include  
    using namespace std; 
    double f(double); 
    double Simpson(double, double, int); 
    double MonteCarlo(double, double, int); 
    int main() 

    double a = 1.0, b = 3.0; 
    int N = 16, M = 150; 
    double h = (b - a) / N; 
    cout << setprecision(4) << fixed; 
    cout << "Oraliqni bo'linish soni N = " << N << endl; 
    cout << "Sinovlar soni M = " << M << endl; 
    cout << "Dastlabki oralik [" << a << ", " << b << "]" << endl << endl; 
    double exactInt = Simpson(a, b, N); 
    double monteInt = MonteCarlo(a, b, M); 
    cout << "Simpson formulasi yordamida integral(qarindoshli formulasi): " << exactInt << endl; 
    cout << "Monte-Karlo usuli yordamida integral: " << monteInt << endl; 
    cout << "Xato: " << abs(exactInt - monteInt) << endl; 
    return 0; 



    double f(double x) 

    return log(x * x + 1) * pow(x * x + 3 * x + 1, 1/3.0); 

    double Simpson(double a, double b, int N) 

    double h = (b - a) / N; 
    double sum = 0; 
    for (int i = 0; i <= N; i++) 

    double x = a + i * h; 
    if (i == 0 || i == N) 

    sum += f(x); 

    else if (i % 2 == 1) 

    sum += 4 * f(x); 

    else 

    sum += 2 * f(x); 


    return sum * h / 3.0; 

    double MonteCarlo(double a, double b, int M) 

    double sum = 0; 
    srand(time(NULL)); 


    for (int i = 0; i < M; i++) 

    double x = ((double)rand() / RAND_MAX) * (b - a) + a; 
    sum += f(x); 

    return (b - a) / M * sum; 

    Yuqoridagi funksiya xaqida ma'lumotlarni konsolda chiqaramiz. Yuqoridagi 
    dasturimizni ishga tushuring va natijaga e'tibor bering. 
    Natijada, "Simpson formulasi yordamida integral" va "Monte-Karlo usuli yordamida 
    integral" qiymatlari ko'rsatiladi. 'Xato' qiymati, integralni toliq hisoblash uchun 
    ishlatilgan iki formulani aniqlashning maydonga o'tqazilishi natijasidir.

    Download 359.9 Kb.




    Download 359.9 Kb.
    Pdf ko'rish